How does cloud computing work?
Cloud computing is based on a technology known as virtualization. This technology enables the creation of a virtual, simulated computer, behaving exactly like a physical computer equipped with its own hardware. This is known as a “virtual machine”.
Several virtual machines can be hosted on the same physical machine, separate from each other. These virtual machines do not interact with each other, and the files and applications of one are not visible on the others.
Virtual machines make efficient use of the hardware on which they are hosted. A single server becomes a multitude of servers, and a data center becomes capable of serving many companies.
This is what enables Cloud providers to offer the use of their servers to many customers simultaneously, at extremely low cost. Even if one or more servers fail, Cloud servers remain available and functional. This is because providers usually back up their services on multiple machines spread over several regions.
Users access cloud services via a web browser or application, and connect to the cloud via the Internet. It’s a technology made possible by major innovations over the past few years.
The history of Cloud Computing
The term Cloud Computing was coined in the early 2000s. However, the concept of “computing as a service” dates back to the 1960s. Back then, companies called “computer bureaux” enabled other organizations to rent time on a mainframe, rather than having to buy one.
With the rise of the personal computer, these services gradually disappeared as prices fell. Subsequently, the emergence of on-site data centers enabled companies to store large quantities of data in-house.
The rental of IT resources made a comeback with the emergence of Cloud Computing, which really took off with the advent of hyperscale providers like Amazon Web Services, and the SaaS model…
SaaS, PaaS, IaaS... what are the different types of Cloud services?
There is a wide variety of Cloud services. This technology can be used for data storage or processing, networking, or even artificial intelligence. However, most services fall into one of four categories: SaaS, PaaS, IaaS or FaaS.
“SaaS” or Software as a Service
SaaS (Software as a Service) are applications and software accessible via a web browser. Well-known examples include Google’s G Suite or Microsoft’s Office 365 suite. Another SaaS used by many companies is Salesforce HR software.
Many collaborative solutions are based on the Cloud and the SaaS model. These include Slack, Microsoft Teams and HipChat. These platforms enable remote communication and teamwork, thanks to messaging and file sharing, as well as audio and video communication.
Today, most major enterprise software products are available in SaaS format. Market giants such as Oracle and SAP have also adopted this model.
As a general rule, many configuration options and development environments are offered with SaaS to enable users to code their own modifications and add-ons.
“IaaS” or Infrastructure as a Service
IaaS or Infrastructure as a Service encompasses many different Cloud services: storage, computing power, databases, VPN, Big Data analysis solutions, development tools, Machine Learning…
The pioneering IaaS provider is Amazon Web Services, which remains the market leader today. It is followed by Microsoft Azure, Google Cloud, Alibaba and IBM.
“PaaS” or Platform as a Service
PaaS, or Platforms as a Service, are a set of services and workflows designed specifically for developers. Developers can use shared tools, processes and APIs to accelerate the development, testing and deployment of their applications.
Among the most popular PaaS are Salesforce, Heroku and Force.com, as well as Pivotal Cloud Foundry and Red Hat OpenShift. PaaS enables companies to offer their developers access to resources, while letting operators maintain the underlying infrastructure.
In a number of industries, such as finance, healthcare, retail and manufacturing, suppliers are offering PaaS solutions that enable companies to develop vertical applications based on services specifically designed for their field of activity. These “vertical clouds” help accelerate the market launch of vertical applications.
“FaaS” or Function as a Service
Finally, FaaS or Functions as a Service is the Cloud version of serverless computing. This model adds a layer of abstraction to PaaS. In this way, developers are totally isolated from the software stack and alone with their code.
They don’t have to worry about virtual servers, containers or application runtimes, and can focus on functional blocks of code that need to be downloaded and configured to be activated by a specific event. This could be a form submission or an uploaded file, for example.
The advantage of this model is that it reduces costs, since no IaaS resources are consumed until the event occurs. All major cloud providers offer FaaS in addition to IaaS: AWS Lambda, Microsoft Azure Functions, Google Cloud Functions, IBM OpenWhisk…
“XaaS” or Anything as a Service: when everything becomes a Cloud service
In addition to these four main categories, there is a wide variety of Cloud services available today. Examples include iPaaS (integration platform as a service), enabling data integration and data sharing with leading SaaS or on-premise enterprise applications.
Similarly, IDaaS (identify as a service) enables users to manage their identity and access data on site or in the Cloud. The types of Cloud services are now so numerous and varied that they are referred to as “XaaS”, for “Anything as a Service”.
Public, private or hybrid cloud: Which to choose?
When data or software is accessed via the Internet on a provider’s servers, this is known as the “public cloud” model. Public Cloud providers include Amazon Web Services and Microsoft Azure.
In the case of private clouds, the technology used by the IaaS of public clouds is offered in the form of software that can be deployed and operated directly in-house at the company’s data center. Employees can then use the virtual resources they need to develop, test and run applications.
Private clouds automate data center management, reducing management tasks to a minimum for administrators. The most popular commercial private cloud software is the VMware Software Defined Data Center stack. In the open source arena, the champion is OpenStack. The hybrid cloud, on the other hand, is the integration of a private cloud with a public cloud. This model involves the creation of parallel environments in which applications can be easily transferred between public and private Clouds.
It can also mean leaving the company’s databases in its own on-site Data Center, and integrating them with public Cloud applications. During peak demand, virtualized workloads can also be replicated from Data Centers.
In a nutshell, a hybrid cloud is a mixture of public and private clouds. Part of the data may be stored on site, for example the most sensitive data, while the rest is stored on a remote public cloud server. This model is becoming increasingly popular with businesses, and currently dominates the cloud computing landscape.
What is multi-cloud?
Within a company, a “multi-cloud” strategy simply means using more than one public cloud service. This approach avoids dependence on a single supplier. In some cases, the aim is also to take advantage of specific Cloud services offered by different providers. It may also be possible to integrate these services.
For example, a developer may want to use Google Cloud’s TensorFlow machine learning service to develop Machine Learning applications, and prefer Jenkins hosted on the CloudBees platform for continuous integration.
However, managing multiple Clouds can lead to cost and technology complexity. To address this issue, some organizations are opting for Cloud management platforms or Cloud service brokers. Such options enable multiple Clouds to be managed as a single platform.
What is a container?
Containers, like virtual machines, are based on virtualization technology. They are part of the PaaS (platform as a service) model.
However, whereas abstraction occurs at kernel level on virtual machines, it occurs at operating system level for containers. Each virtual machine has its own operating system kernel, while containers on the same machine share the same kernel.
Who are the main cloud providers?
The Cloud market, or at least the IaaS and PaaS market, is largely dominated by a handful of giants. The absolute industry leader is Amazon Web Services, followed by Microsoft Azure, Google Cloud Platform, Alibaba and IBM.
According to research, most companies choose to use AWS and a second Cloud provider. According to Gartner, until at least 2021, two-thirds of spending on cloud services will go to the top 10 public cloud providers.
What is the Cloud for and what are its advantages?
The Cloud removes the need for users to manage physical servers themselves, or to run software on their own machines. For companies, this represents a significant saving in time and money, since the Cloud provider takes care of updating and maintaining the servers.
This is a real advantage for small businesses, which would not have the means to finance their own infrastructure anyway. For large companies, it’s also a way of operating more easily internationally, since all employees can access the same files and applications from anywhere in the world.
Cloud files and applications can be accessed from any device connected to the Internet, since calculations and storage are performed on servers and not directly on the device.
Another advantage of the Cloud is the ability to pay only for the resources used. Rather than investing in powerful machines that won’t always be fully exploited, companies can consume only what they need, and pay accordingly. If needs increase, consumption can also be increased.
The Cloud also enables applications requiring dynamic scalability to be brought to market more quickly. However, developers today are often overwhelmed by the abundance of new services that can be incorporated into applications, such as Machine Learning or IoT connectivity.
Companies sometimes migrate their traditional applications to the Cloud to reduce the resource requirements of their data centers. However, the benefits of the Cloud really apply to new applications and Cloud Native attributes such as microservices architecture, Linux containers, or container management solutions like Kubernetes.
Cloud computing has also become the preferred platform for large-scale applications, especially those requiring frequent updates and dynamic expansion. Overall, the public cloud now dominates the enterprise technology landscape. Innovations now appear first on the cloud.
The disadvantages of cloud computing
For all its advantages, cloud computing also has its drawbacks. One of the main obstacles to adopting this technology is security.
Even if the major Cloud providers take radical measures to ensure the security of their servers, and surround themselves with teams of professionals, there is no such thing as zero risk. Cyber-attacks are regularly carried out against the Cloud, and some of them bear fruit.
In addition to the risk of data leakage, a major drawback of the cloud is the risk of downtime. Even the biggest service providers, such as Amazon, Microsoft and Google, have experienced outages lasting several hours.
During this time, users are unable to access Cloud services. Without going as far as a complete breakdown, Cloud servers are sometimes overloaded, which can cause slowdowns or extended loading times…
The future of cloud computing
According to IDC, building Cloud infrastructure now accounts for over a third of IT spending worldwide. Little by little, the Cloud is overtaking traditional infrastructure.
Despite its rich history, the Cloud is still in its infancy. At present, it is estimated that only 10% of workloads that can be transferred to the Cloud are actually done so.
Many companies are still in the experimental phase, hesitating as to which applications to migrate to the cloud. However, over the coming years, the use of this technology will continue to grow.
To convince organizations to take the plunge, suppliers are increasingly presenting the Cloud as a crucial element in the digital transition. This technology enables companies to rethink their processes and put an end to data “silos”.
In the future, the Cloud will continue to grow, and new types of service will continue to emerge. There’s no doubt about it: this is one of the major technologies of the 21st century…
You know all about Cloud Computing. Now discover our complete dossier on Data Science.