Far from being a one-time phenomenon, the cloud is emerging as a major transformation in the IT industry.
Most companies have a cloud strategy, possibly hybrid. The website statista.com estimates that the revenues generated by the cloud in 2021 will be US$400 billion, and this in a context of very strong growth.
The principle of the cloud is to outsource infrastructures, which are then entrusted to an external provider instead of being hosted and updated on site by the company itself. These IT infrastructures are accessible via the Internet.
What are the main characteristics of the cloud?
- Pooling of resources: the cloud service provider shares its resources among several companies, which can then have access to much higher performance than what can be afforded with on-premises hardware.
- Elastic allocation of resources: whereas with on-premises hardware, a power limit is inevitably reached, with the cloud, in the event of major needs, the operator provides additional resources, particularly computing power, on an ad hoc basis.
- Consumption-based billing: by time spent, or by the number of users. This is particularly useful for testing the solution on a small group of pilot users, before extending it to an entire department.
This makes the cloud ideal for small and medium-sized businesses in particular, who will be able to access high-performance resources at a much lower cost than managing the architecture on site.
There is no need to manage the implementation and maintenance of storage architecture. The connection is simply done through a browser and all calculations are done in the cloud, and are managed by the provider. It is therefore possible to work with computers of very limited capacity, and thus to reduce the costs related to the equipment but also to reduce electricity consumption. In addition, there is no need to manage software updates and time-consuming adjustments of software settings and preferences across the entire computer fleet. Updates are done in the cloud and all users benefit directly. Specifically for data processing, the cloud also solves sharing and synchronization issues, since again, all users access the data in the same place. There is no more duplication on each personal computer. All these simplifications lead to the disappearance of certain jobs in companies that choose the cloud. But on the other hand, it is even more crucial to choose the right cloud offer to meet your needs. In a context of ever-increasing complexity, with numerous tools that all offer advantages and disadvantages, making the right choice has become complex. It is however something crucial because it is often quite complicated to migrate from one cloud to another or to recover developments to host them on site.
3 types of Cloud, which one to choose?
Although the tools are numerous and evolve very quickly, it is possible to distinguish 3 main types of cloud. When analyzing the needs to choose the right tool, it is already useful to be able to distinguish which of these 3 types of cloud is the most suitable:
SaaS (Software as a Service): It is both a space but also a software, or a set of software, which are offered as a service. The provider provides the software in its cloud directly to meet the needs, and takes care of the updates. The counterpart is that it is difficult to change environment to move to a competing offer because the code is not directly accessible. The challenge with a SaaS is to ensure that the software offered can meet all the project specifications.
Salesforce CRM Analytics is an example of a SaaS cloud.
PaaS (Platform as a Service): It is a development platform that the supplier makes available, without any software already developed, but with a fully configured environment. The challenge is to ensure that the environment integrates all the languages and libraries necessary to develop the project. There are PaaS dedicated to specific domains, with languages specific to these domains as well as libraries already configured and ready to use.
Posit, for example, is a cloud dedicated to data science that integrates a complete environment in R and Python.
IaaS (Infrastructure as a Service): It is a space, accessible from the Internet, allowing the development of applications without constraint, but requiring to take care of all the installations and updates. Only the hardware is relocated. The IaaS is therefore unlimited but has a higher cost. It is ideal for developing uncommon applications, for example that require the use of several technologies rarely used together.
AWS (Amazon Web Service) is an example of an IaaS cloud, although this platform offers other complementary services.
The right approach when choosing a cloud solution is to start with the most detailed analysis possible of the project’s objectives and constraints. The important thing is to understand the users’ needs so that you don’t run into difficulties or limitations after the fact. If a SaaS solution meets the need, it is certainly to be preferred, as this solution will minimize costs and workload. If the project has needs that a SaaS does not meet, then a PaaS-type solution should be considered. There will then be specific developments to make but in an architecture that is already fully configured and regularly updated by the provider. Finally, if the needs of the project require an atypical architecture that is not available in PaaS, then an IaaS should be considered.
It is common to use a data architect or a data engineer to give yourself the best chance to make the best choice.
The most used type of cloud is SaaS, which confirms the trend of companies to outsource as much as possible what is not directly their core business. Outsourcing to the cloud is indeed a good approach to free up human resources and focus on what really adds value to the company, while keeping costs under control.