Nov. 25, 20198 min read
Authors: Michał Urbański - Head of Backend Development
Cloud computing has been a trending topic for at least a few years in a row. It gives companies access to servers, storage, databases and additional application services, in a flexible, pay-as-you-go model. In fact, the cloud is ubiquitous. In mid-2019 94% of companies use at least one cloud-based application that handles secure business data and more and more businesses and organizations make a switch from self-hosted infrastructure to the public cloud providers. There are various reasons for it.
First of all, companies can focus on developing their products instead of maintaining all the necessary infrastructure, which is costly, time-consuming and requires lots of resources. Instead, cloud solutions providers charge a monthly fee (that can be paid monthly or annually) for access. The infrastructure, its maintenance, licensing and all the additional requirements are on the provider’s side.
What is also important, using the cloud doesn’t require strong computer skills. It’s crucial for smaller businesses that usually can’t afford to hire many IT officers and their owners don’t have enough skills to maintain the infrastructure on their own. Cloud comes to the rescue, together with tech support whenever it’s needed.
Besides, cloud is highly scalable. Whenever there is a need to upscale or downscale, thanks to the cloud it’s enough to change the subscription plan. To do the same with an on-premise solution, it’s necessary to adjust the number of employees and office space, which is not only expensive and time-consuming but also difficult and may be a serious blocker when it comes to scaling.
With scalability, there comes flexibility. Cloud makes it easy to connect external contributors and to give them access to all the necessary services. It also facilitates the work of the entire team that more and more often works on the go and on mobile devices.
Another factor in favour of cloud-based services is security. Although it’s a concern of many users, reliable cloud providers consider security a crucial part of their business models. They’re well-known for data encryption and strong password requirements. They’re also GDPR-compliant and they meet the strict security standards. Of course, some clients, especially in the finance sector, prefer to have on-premise applications. However, if there are no such restrictions, the cloud is the best option.
That’s why, nowadays, the question is usually not whether to choose a cloud platform or not but rather which provider would be the best. Before we move on and present the most widely-used providers, let’s analyze what factors should be taken under consideration before making the final decision.
We’re aware that picking the best provider is a challenging task as there are so many of them on the market and at first glance, their features seem to be similar. The right decision is always the combination of an in-depth analysis of specific business requirements and minimum expectations and assessing providers in terms of features, pricing, reputation, security, and other factors. We’ve gathered them to help you make an informed choice.
The right cloud platform, its architectures, standards, and service must be aligned with your current technical environment, workloads and management preferences. Before picking a provider, you should assess how much re-coding and other adjustments would the whole process need whether a provider offers migration support and assistance.
Make sure the provider you choose meets the strict security standards and considers security a top priority. Always verify if they’re compliant with standards like the ISO 27000 series and if their certifications are valid. Server location is also important as different local laws may apply and you make to be 100% sure of having control regarding the jurisdiction in which your data is stored, processed and managed.
Although downtimes are inevitable and you shouldn’t rule a provider out just because it openly publishes information about it. However, it’s important how often downtimes happen and how the provider solves such a situation. Verify provider’s processes, roles and responsibilities, tools, and disaster recovery provisions.
When choosing the cloud provider, you should think in terms of the ecosystems, not a single product. As a representative of a digital company you likely use various digital tools, such as CRM, analytics, etc. It’s no different in terms of the cloud providers - they also have a network of partners and it’s advisable to know them in advance and make sure they’re trusted and reliable.
It’s always advisable to work with a company that is reputable and has a strong record of stability and that has no history of legal issues or data breach. It should also be in a healthy financial position and run by experienced managers.
Although there are many cloud platform providers, such as Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), IBM Cloud, Dell EMC, Salesforce Cloud, Oracle Cloud and many more, the first 3 of them have taken the lion’s share of the market. AWS is the leader - according to the data from Synergy Research Group, its market share has held steady at around 33%, but Microsoft Azure does its best not to stay behind and enjoys the highest growth rate. GCP is the youngest player but it quickly managed to get a good presence in the cloud industry.
Each platform has its own strengths and weaknesses, which makes them suitable for different types of products. Let us take a closer look at all of them to see how they compare against each other.
AWS has been on the market since 2002 and since then, it has grown an unbeatable leader of the cloud market. It is a vast and comprehensive cloud with the massive scope of its operations, which may be one of the main reasons behind its popularity. AWS provides different services such as Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as s Service (SaaS). Besides the cloud platform, it provides temporary storage, developer tools, mobile and applications services, subnets, private IP addresses, virtual machines and many more features. Customers can choose the size, power, memory, etc.
A significant big advantage of AWS is its flexibility - both big players like Netflix or Expedia (it can support almost unlimited numbers of users) and startups and SMEs can get the most out of the cloud using AWS. Its popularity brings another advantage - there are more articles, documentation, tutorials and other resources available than from other providers. This vast knowledge base makes it easier to learn and use. Its pricing is based on the amount of usage and storage that is customizable, which makes applications hosted on AWS easy to scale, both up and down. On the other hand, the number of services available can be confusing and the majority of AWS users (startups and SMEs) only need the most basic ones.
Similarly to AWS, Azure is also a well-developed comprehensive product, which makes both cloud providers close competitors. It was released a few years later, in 2010, but Microsoft is a mature and experienced player. Similarly to AWS, Azure offers IaaS, PaaS and SaaS; and supports both Microsoft Windows and Linux operating systems.
In contrast to extremely flexible AWS, Azure focuses on enterprise applications, which shouldn’t be surprising - Microsoft has had huge experience in developing enterprise solutions and obviously, In fact, it took its on-premises software, such as Windows Server, Office, SQL Server, Sharepoint, Dynamics Active Directory, .Net, and others to repurpose it for the cloud. Obviously, Azure is tightly integrated with other products from Microsoft which brings it trust from loyal Microsoft users. Azure is also considered as one of the fastest cloud solutions available. It is a hybrid cloud that both runs a data center and interoperates with data centers, which is also a strength.
What sometimes is indicated as a downgrade of Azure, is its enterprise focus that leaves smaller users with issues with support, training and other essential parts of using the cloud.
GCP is the youngest player on the cloud market, launched in 2010. Just like its competitors, GCP allows for performing high-level computing, it offers storage, networking, and databases. Similarly to AWS and Azure, GCP provides IaaS, PaaS and SaaS. It also offers big data and the Internet of things (IoT). Google Cloud Platform is particularly suitable for mobile applications - its App Engine product allows mobile developers to create apps without dealing with the server. GCP is also famous for its security. Having multiple layers of authentication, data encryption, and numerous security-oriented teams, GSP is widely considered as highly secure. Google is also famous for its analytical tools, including deep learning, AI, and machine learning; which give GCP a competitive advantage. What is more, Google developed the Kubernetes standard and is has a strong offering in containers. AWS and Azure offer it too, but GCP was first.
Choosing the best cloud provider is a tough nut to crack. AWS, Azure and GCP leaders offer comprehensive solutions that include myriads of features that are necessary to develop robust and reliable applications. AWS has been on the market since 2002, which makes it the most mature product, that has invested in worldwide data centers and solutions for many years. Google Cloud and Azure are relatively new, but on the other hand, they can take advantage of the experience and infrastructure of tech giants: Google and Microsoft.
AWS is a public cloud, flexible and ready to meet the needs of both big and small applications. Azure is focused on the enterprise market and its flawless integrations with Microsoft 365 ecosystem are its strong value. On the other hand, Google Cloud Platform has a similar advantage - it integrates well with all the popular tools provided by Google, which means that the final choice of the cloud provider will be significantly influenced by other tools and ecosystems that are preferred by the development team.
It’s safe to say that you’ll likely be equally satisfied by using AWS, Azure, and GCP. All of them are comprehensive (GCP has slightly fewer features, but it may be enough for your needs) highly secure, reliable and flexible. Their pricing plans are comparable, so you need to analyze your needs and pick the most suitable one.
If you want a solution that has been chosen and used by the biggest number of people, then pick AWS. If you’re already satisfied with Microsoft 365 then add Azure to the stack, especially if your app is an enterprise solution. Or give GCP a chance if you’re an avid user of their ecosystem and especially if you develop machine learning projects and need rich analytical tools.
To help you make an informed choice, we’ve prepared a table that compares the most significant features of AWS, Azure and GCP.
If you need more assistance in choosing the best cloud service provider, along with developing your own product - get in touch.