As
Wikipedia quotes,
“Cloud computing is
computing in which large groups of remote servers are networked to
allow centralized data storage and online access to computer services or
resources”
Few
years ago cloud computing was a “Hype” but now it has become a reality. This
simple concept has now become the pioneer in driving the modern complex
businesses in to success. The easiest way to understand what this concept means
is to consider Gmail, the most popular email service provided by google and
used by millions of people across the globe. For anybody who needs to use the
service provided by Gmail, what they have to do is to simply login to their
Gmail account. They do not need any special infra-structure to handle the
processing of those services. No space, power, dedicated servers, networks or
storage is needed to keep the service up and running. No technical experts are
needed to make sure the maintenance of the resources needed for the service
happens regularly. Google encapsulates and takes care of all those burdens and
provides us a service that we can use with almost no cost at all when compared
to the scenario where we had to take care of all of those aspects. The user is
provided with numerous options to customize the application according to what
they prefer. A good example of where this technology has been implemented and
is used extensively is the email system administrated by the Department of
Computer Science and Engineering, University of Moratuwa. There, the department
pays for Google and gets the service of the Google Gmail servers and provides
the students with email accounts running on those servers.
The
biggest advantage of that kind of an act is that the users do not need to spend
much time on getting familiar to the service since it is just like the good old
email service they were using with Gmail for a long time. They would have the
same familiar UI, look and feel and the tools provided by google free Gmail. It
does not have any set up or maintenance cost and that too makes it a more
feasible solution. Also since cloud based services are typically housed in
highly efficient data centers that operate at higher server utilization rates
and use hardware and software that is built specifically for the service they
provide, which in the previous example was the mail service, even small scale
businesses which are rarely able to create one such on their own, is able to
achieve those services by paying a fair amount of money to the companies that
provide these cloud computing services.
Everything
in this world has both its pros and cons. The most significant drawback that
can be observed in the concept of cloud computing is that its central point of
failure. For example, by any mean if any intruder become successful in
breaching the security of the cloud servers, all the clients who depend on
those cloud services would be in trouble. Dozens of companies and organizations
would become vulnerable to losing millions and billions of profit within just a
fraction of a second. Hence it is critical that those cloud servers are well
secured and protected.
Multi
tenancy is yet another revolutionary concept that came up with the rise of
cloud computing in the world. Without having separate customized application
instances to each of the cloud customers, multi tenancy applications provide
customized services to each of the customers yet from the same application. It
has changed the traditional way we look at software. Ranging from consumer
applications to business applications this concept has been used widely in the
cloud computing world. Multi tenancy provides an architecture in which a single
instance of a software running on a cloud server serves multiple customers. A
customer in this context is called a tenant and the application serves to a
group of tenants at once. Still the fact remains that not every customer would
want the same functionality from the application. For instance the
functionalities expected from the application by a software company would be
different from the functionality expected by a garment factory. While a
software company would need to manage the information of their clients, a
garment factory would not need that functionality in their system. The user
interface and the look and feel a certain software company expects would be
different than that a garment factory would expect from the application. Still
multi-tenant applications are built in such a way that it can cater these
conflicting needs of different organizations by providing them the ability to
customize and use the app the way they want. Since it is only a single
application that each and every customer uses, it is much easier for the
technical experts in the cloud side to focus on it and to improve and update
the application to provide better and better security and reliability for the
customers regularly. All these have led this multi tenancy concept to be what
leads the present as well as the future of enterprise cloud computing.
It would
sound astounding that in cloud computing, the customers would never need to buy
anything. They would only have to pay for what they consume or the service they
receive for only the time they actually need it. That makes it a more
economical strategy since the best use of the money spent is employed. For
example, any large scale and even small scale company has different periods of
time in an year when their sales go high and other times in the year when their
sales would not be that high. In most of the cases, the sales going high would
be due to any event coming up like Christmas or Sinhala Tamil New Year. The
high demand experienced on those seasons would only last for about a month and
the sales would go back to the normal demand level. Software wise, during the
times when the demand rises, the software would require more computational
power and storage to perform its functionalities. A naïve approach to finding a
solution to this problem would be to buy computers and storage that could
comply the high demand of computational power and storage. But if considered in
a broad sense, it is quite clear that the extra computational power and storage
bought would not be put to optimal use during the time of the year where the
sales are not that high. Simply put, the cost that was spent on upgrading the
computers becomes a waste once the season is over. The most economical strategy
to follow would be not to buy that extra computational power and storage but to
rent it. It is possible to allocate a computer or a set of computers with
dedicated storage in the cloud via a cloud service provider and use that
computational power to meet the computational and storage demands. The business
would have to pay only for the time period the service is used which would be a
very small amount of money when compared to upgrading or buying new computers
with extra computational power. And when the season ends, simply the company
can roll back to their old computer system which had enough storage and
computational power to cater the general sales demand. This ability of scaling
up and down is also a key feature provided by cloud computing driving
businesses to success.
Technically,
cloud services can be viewed basically in three categories. They are
- IaaS(which stands for Infrastructure as a Service)
- PaaS(which stands for Platform as a Service)
- SaaS (which stands for Software as a Service)
These
three categories act as the basic layers of the cloud computing services that
exist at present. Let us consider each of those in detail.
Infra-structure
as a Service which is also referred to as Hardware as a Service is the category
that falls to the lowest level in terms of computation that provides a
foundation to Platform as a Service and Software as a Service. These services
are usually utilized by clients who needs services that directly interacts with
hardware. Basically this provides access to the computing resources in the
cloud. The term “Infrastructure as a Service” itself suggests that the
computing resources refer to the hardware access that is provided to the client
in the means of a virtualized hardware environment. The client would not feel
he is interacting with hardware yet in the actual scenario, he does. The
hardware services provided by the cloud might include virtual server space,
memory, data storage, load balancers, bandwidth, IP addresses and network
connections. These infrastructure enable by the clients to build cost effective
business specific IT solutions leaving the burdens of hardware management and
maintenance to the cloud service provider. A popular infrastructure service
provider is amazon that runs in the name Amazon Web Services, Inc.
The
Platform as a Service category can be considered as something that runs on the
IaaS as a foundation. Here also, as the name itself suggests, these provide a
platform and an environment for the application developers all over the world
to build applications and services over the internet. This provide much freedom
for the clients since it is the client who decides how the service they build
should work or how the application they build should look like. The developer
is provided with the platform where he or she has freedom to bring all the
creative and innovative ideas they have in their minds into a virtual reality
with the help of the tools supplied by the cloud service provider. Cloud features
and services like tools for testing and deployment, hosting, database management,
operating systems and server side scripting environments fall into this
category. These enable clients who are not really technical experts to even
develop their own applications owing to the simplicity and the flexibility of
the services provided as a development platform. The most popular example for
Software as a Service is the Google App Engine which enables its users to build
and run applications on Google’s infrastructure. Apart from that, Windows Azure
and Apache Stratos also can be considered as cloud computing services that
falls to the Platform as a Service category.
The
highest level category of cloud computing is the Software as a Service category
which usually runs on a platform service having an infrastructure service
underneath it as a foundation. Unlike the other two categories, here the target
client audience would be the end users who do not necessarily need to have any
background technical knowledge. The applications are made as simple as possible
for any user to be able to interact with it without any difficulty. The
application or software may range from social networks to large scale
enterprise level mission critical business systems. It is SaaS that has
actually changed the way people looked at software by changing the concept of
buying software to the concept of renting software. This allowed more
economical use of computational power with the usage of cutting edge technology
software available in the whole world. The only drawback of the services
provided under this category is that the clients will be restricted to use and
be satisfied with what the software or the service provider provides. The
client will have no freedom to change the software or service according to his
or her will. Yet most of the SaaS at present are built in a way such that they
would give the best user experience for the clients and the clients would not
feel a need of changing them. The best example for Software as a Service is
Google Docs. Google docs allows us to use one piece of software for all our
documentation needs. The service can be accessed via internet from where ever
in the world by just entering the username and the password of the Gmail
account through the browser. The concurrent sharing of documents has also been
made possible just because of this concept of Software as a Service in cloud
computing.
In the
future, it is believed that cloud computing which is at present kind of like
restricted to consumer applications and business applications, would dominate
many fields in the world and become the pioneer in leading a revolution in the
world of Computer Science.
Cloud computing is the best technology that every top company in this world are using for their computing purpose. This article provides the information that is more relevant to it. Thanks for sharing this valuable information in here. By the way you are running a great blog here. Keep up this good work.
ReplyDeleteCloud computing training centers in chennai
hadoop training
There are lots of information about latest technology and how to get trained in them, like Hadoop Training Chennai have spread around the web, but this is a unique one according to me. The strategy you have updated here will make me to get trained in future technologies(Hadoop Training in Chennai). By the way you are running a great blog. Thanks for sharing this.
ReplyDeleteHadoop training institutes in chennai | Hadoop Training Chennai
This comment has been removed by the author.
ReplyDeleteThe knowledge of technology you have been sharing thorough this post is very much helpful to develop new idea.
ReplyDeleteBig Data Hadoop Training In Chennai | Big Data Hadoop Training In anna nagar | Big Data Hadoop Training In omr | Big Data Hadoop Training In porur | Big Data Hadoop Training In tambaram | Big Data Hadoop Training In velachery