A deep understanding of cloud computing: evolution, service and model deployment, future trends and challenges

by bluetata

Overview

In the Information age, businesses need to continuously update their technological capabilities to meet the ever-growing operation demands. With the acceleration of digital transformation, an increasing number of enterprises are opting for cloud computing as the fundamental infrastructure for their information technology applications, aiming to address previous challenges such as high hardware investments and management complexities. Cloud computing not only facilitates resource sharing and cost reduction but also enhances system availability, scalability, and security. Furthermore, it supports a wide array of applications and services, such as storage, computing, databases, artificial intelligence, and the Internet of Things (IoT). Cloud computing enables businesses to swiftly launch new products, services, and business models, thus achieving digital transformation and fostering innovation.

 

This article will introduce the basic concepts and service models of cloud computing, focusing on elucidating the advantages of enterprises adopting cloud computing and presenting industry use cases. Additionally, it will delve into the future development trends of cloud computing and its impact on businesses.

 

Note: This article was last updated on Aug 01, 2023, at 10:16 AM, and finally published on CSDN. Due to the continuous advancements in information technology field and possible variations in the author's understanding of technology at different time periods, the content of this article may be subject to updates at any time. Please take note of the last update time.

 

Understanding Cloud Computing

 

What Is Cloud Computing

There are too many articles with endless introductions about cloud computing, and maybe they are copied and pasted. But when you ask the authers what cloud computing actually is, they may talk for three minutes, and you still might not understand.

 

In online articles or regular books, you may come across various explanations of cloud computing. Here are two common conceptual definitions:

 

The Definition of Cloud Computing in Wikipedia

Cloud computing is the on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by the user. Large clouds often have functions distributed over multiple locations, each of which is a data center. Cloud computing relies on sharing of resources to achieve coherence and typically uses a pay-as-you-go model, which can help in reducing capital expenses but may also lead to unexpected operating expenses for users.Excerpt from Wikipedia. For the original content, click here.

 

NIST Standard Cloud Computing Definition

In 2011, the National Institute of Standards and Technology (NIST) in the United States published its definition of cloud computing, stating that cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (such as networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider intervention. The cloud computing model exhibits five fundamental characteristics: on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service. It also encompasses three service models: Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS), as well as four deployment models: private cloud, community cloud, public cloud, and hybrid cloud.

 

Currently, many articles, journals, and books use NIST's cloud computing definition as the standard reference.

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models.

 

(The image is excerpted from: The NIST Definition of Cloud Computing SP 800-145 (Final))

 

The PDF document of the NIST Cloud Computing Standard Definition can be found in the reference list at the end of the article.

 

If Asked During an Interview, How Should You Explain Cloud Computing?

When explaining the concept to friends or being asked about cloud computing during an interview, you should avoid simply quoting textbooks or providing links. Instead, you should incorporate your own unding to convey the concept better .

 

Here's a detailed explanation and a concise conclusion that can be used during interviews or casual conversations: Cloud computing is a method of providing IT resources over the internet, offering various computing capabilities, storage space, and network bandwidth based on users' demands and usage. It operates on a pay-as-you-go pricing model. In other words, users can purchase cloud services according to their specific needs, allowing them to flexibly utilize computing resources while avoiding the expenses of acquiring expensive hardware and maintaining equipment. Consequently, cloud computing has become the mainstream choice for building enterprise IT infrastructures.

 

In a nutshell, cloud computing is: "Providing IT resources on-demand over the internet using a pay-as-you-go pricing model."

 

The Development History of Cloud Computing

According to some relevant information, the blogger has compiled a timeline of significant events in the development of cloud computing. If you notice any issues with the timeline, please feel free to private message the blogger or leave a comment.

 

 

On this timeline, please pay attention to the year of 2002, when Amazon launched Amazon Web Services (AWS), and it was well-known to everyone. Additionally, it is worth mentioning that in 2003, the Chinese company ActionSoft released AWS 2.0, sharing the same name as Amazon's AWS. This led to a series of lawsuits between the two companies over the usage rights of "AWS." In the end, E2E Cloud won the case, and Amazon lost the right to use the AWS trademark in China.

 

As for domestic cloud providers in China, the blogger initially intended to create a detailed timeline. However, due to incomplete data or a lack of accurate information from official websites, it had to be temporarily put on hold. If anyone has knowledge about the significant events of the following cloud providers, we can discuss and exchange information together.

 

Timeline of some other mainstream cloud providers in China (likely not entirely precise or accurate, for reference and exchange purposes):

  1. UCloud Cloud Computing: In 2012, UCloud officially launched cloud computing services.
  1. China Mobile Cloud: In 2014, China Mobile introduced "He Feixin Cloud" service, marking the beginning of China Mobile Cloud.
  1. 2015: JD.com launched cloud computing service JD Cloud, providing IaaS and PaaS services.
  1. 2016: NetEase introduced cloud computing service NetEase Cloud, offering IaaS and PaaS services.
  1. 2018: China Telecom launched cloud computing service CT Cloud (Tianyi Cloud), providing IaaS and PaaS services.
  1. 2019: China Unicom introduced cloud computing service Woyun (Wo Cloud), offering IaaS and PaaS services.

 

Introduction to Cloud Service Models

Cloud service models are typically divided into three categories: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). The typical graphical representation of a service model division is as follows:

The image is taken from the internet

 

Infrastructure as a Service (IaaS)

This model involves renting processing, storage, networking, and other fundamental computing resources. Consumers can deploy and run any software on these resources, including operating systems and applications. They do not manage or control the underlying cloud computing infrastructure, but they have control over operating systems, storage, and deployed applications. Besides that, they may also have the option to choose network components (such as host firewalls).

 

Quote from NIST SP 800-145, The NIST Definition of Cloud Computing.

Infrastructure as a Service (IaaS). The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, and deployed applications; and possibly limited control of select networking components (e.g., host firewalls).

 

Infrastructure as a Service (IaaS) can be exemplified by using a kitchen to cook as an analogy: In the Infrastructure as a Service (IaaS) model, it is like wanting to cook a meal. You already have the ingredients (business or application) and various utensils and kitchenware (middleware and operating systems) prepared. However, you need a kitchen, which requires utilities like water, electricity, and gas (infrastructure, i.e., networks, storage, and servers).

 

In the IaaS service model, users can deploy and run any software, including operating systems and applications, on the infrastructure provided by the cloud service provider. In simple terms, when using IaaS, users have control over everything above the operating system.

 

Examples of common IaaS services in cloud platforms:

Some common IaaS services we often noticed are virtual machines, virtual networks, and storage services. The following are examples of common IaaS services in cloud platforms to facilitate future learning and examination distinctions:

Cloud Platform

Virtual Machine

Storage

Network

Load Balancer

AWS

EC2

S3, EBS

VPC

ELB

Azure

VM

Storage Accounts

VNet

Azure Load Balancer

Huawei Cloud

ECS/HECS

OBS

VPC

ELB

Alibaba Cloud

ECS

OSS, Alibaba Cloud Disk

VPC

SLB

Platform as a Service (PaaS)

This model involves taking applications created or acquired by consumers and deploying them onto the cloud infrastructure using the programming languages and tools specified by the resource provider. Consumers do not directly manage or control the underlying cloud infrastructure, which includes networks, servers, operating systems, storage, and even the individual functions of the application. However, they can control over the deployed applications and may have the option to configure the hosting environment for the applications.

 

Quote from NIST SP 800-145, The NIST Definition of Cloud Computing:

Platform as a Service (PaaS). The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider.3 The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment.

 

Platform as a Service (PaaS) can be exemplified using a kitchen to cook as an analogy:

In this model, when you want to cook a meal, you bring your ingredients (business or application) to the kitchen and find that everything is readily available. Various utensils and kitchenware (middleware and operating systems) are provided, and the kitchen is equipped with utilities like water, electricity, and gas (infrastructure, i.e., networks, storage, and servers). All you need to do is start cooking.

 

Examples of common PaaS services in cloud platforms:

Cloud Platform

DB Services

 

Message Queuing Services

Serverless Services

API Management Service

Others

AWS

RDSDynamoDB

SQSSNS

AWS Lambda

Amazon API Gateway

AWS Elastic Beanstalk

Azure

Azure SQL Database

Azure Service Bus

Azure Functions

Azure API Management

Azure App Service

Huawei Cloud

GaussDBRDS

KooMessage

FunctionGraph

API Gateway (APIG)

Distributed Cache Service

Alibaba Cloud

Yao Chi Database series

MNS

Function Compute

API Gateway

Container Service

Please note that the above list only includes some commonly used cloud services. Due to the multitude of services available, it is not possible to list them all. Only representative examples or a few instances are listed.

 

Software as a Service (SaaS)

This cloud service model involves applications that are run on the cloud infrastructure and provided by the service provider. These applications can be accessed by various client devices through thin client interfaces, such as web browsers (e.g., web-based email). Consumers do not directly manage or control the underlying cloud infrastructure, including networks, servers, operating systems, storage, and even the individual functions of the application. However, limited specific application configuration settings may be an exception and can be specific to each user.

 

Quote from NIST SP 800-145, The NIST Definition of Cloud Computing:

Software as a Service (SaaS). The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure2. The applications are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email), or a program interface. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.

 

If SaaS is used as an analogy for cooking in a kitchen:

 

In this model, when you want to eat, you don't need to prepare ingredients (business or application) or go to the kitchen, nor do you need to arrange various utensils and kitchenware (middleware and operating systems). You also don't need to worry about utilities in the kitchen (infrastructure, i.e., networks, storage, and servers). The food you want to eat will be provided to you, similar to ordering takeout, and your lunch will be delivered to you.

 

Examples of common SaaS services: Various platform-based enterprise email services, Microsoft's Dynamics 365, video conferencing software like Tencent Meeting, Zoom, cloud storage services like Baidu Netdisk or Dropbox, etc.

 

A good distinguishing rule is that SaaS services are generally used through a subscription model.

 

Finally, here is a chart (Tw: @jeffbarr) to help everyone distinguish between IaaS, PaaS, and SaaS.

 

Other Service Models

With the development of cloud technology services, some other services have gradually emerged in recent years. These services have finer granularity, but they are not standard definitions within the broad scope of cloud service models.

 

Gartner divides PaaS into two categories: Application Platform as a Service (aPaaS) and Integration Platform as a Service (iPaaS), which will be classified and explained further.

 

Application Platform as a Service (aPaaS)

aPaaS is a cloud service platform based on cloud computing technology that provides the entire lifecycle of application development, testing, deployment, running, and maintenance. It  helps developers build applications rapidly, eliminating the need for extensive infrastructure configuration and management, enabling developers to focus more on the business logic and functionality of the application. Additionally, aPaaS offers various foundational services and tools, such as databases, security management, API management, DevOps tools, etc., to help developers efficiently develop and maintain applications.

aPaaS is often used for developing and deploying enterprise-level applications and mobile applications. Common aPaaS platforms include Heroku, Google App Engine, Salesforce App Cloud, and others. In China, Huawei Cloud's FusionStage aPaaS platform and Kingdee Yonyou are examples of aPaaS services.

A detailed introduction to Huawei Cloud's FusionStage aPaaS will be presented in a separate article in the future. The blogger has already published it on the Huawei Cloud Community, and those interested can take a look or wait for updates on the CSDN platform.

 

 

Integration Platform as a Service (iPaaS)

iPaaS provides the ability to develop, execute, and manage integration processes, connecting various on-premises and cloud-based processes, services, applications, and data. It can be used within a single organization or across multiple organizations and serves as a PaaS platform for integration and collaboration. Gartner defines iPaaS as "a suite of cloud services enabling the development, execution, and governance of integration flows connecting any combination of on-premises and cloud-based processes, services, applications, and data within individual or across multiple organizations." The iPaaS architecture model includes multiple components and can be categorized into three main layers: external (ecosystem partners), integration (devices, data), and internal business applications.

Common iPaaS platforms include WeChat Pay, Baidu Map, Tencent Cloud, and Huawei Cloud's ROMA Connect.

 

Other Subcategories of Service Models

Based on the target audience of PaaS services, they can be divided into two main categories: 2D and 2B. 2D refers to "To Developer," serving software developers from enterprises and third-party software vendors (ISVs), while 2B refers to serving enterprise IT departments or business departments.

 

Here's a summary of various new terms appearing in the current market based on internet sources, along with Gartner's related specifications, and it was presented in a quadrant chart (CSDN original, please provide proper attribution if reusing, and feel free to point out any errors or queries).

 

 

PaaS offerings from big data vendors actually belong to iPaaS, while PaaS offerings from container vendors and IaaS vendors are generally categorized as aPaaS.

 

Introduction to Cloud Computing Deployment Models

 

This part is not the main focus of this article, and a separate article will be written later to explain it. Interested readers can follow the upcoming articles on this blog.

 

Cloud computing deployment models are divided into four types: Private Cloud, Community Cloud, Public Cloud, and Hybrid Cloud. This classification based on the source of cloud computing services. Private Cloud is established for a specific user/organization. Public Cloud is for the general public. Community Cloud is a form that falls between Public and Private Clouds, and Hybrid Cloud is a combination of any of the three types: Public, Private, and Community Clouds.

 

Cloud Computing and Cloud Native

 

Actually, I'm still hesitating whether to write this section, because some of the members in the group and some of the fans often ask me about the difference between cloud computing and cloud native, so I'll briefly explain it here for better understanding and learning.

 

Comparison of Cloud Computing and Cloud Native

 

Cloud computing is the on-demand provision of resources, infrastructure, and tools by cloud service providers. On the other hand, cloud native is an approach to building and running software applications using the cloud computing model.

 

From the summary, you can see that there are two main aspects regarding cloud native: one is about providing resources, the other is a methodology.

 

Is Cloud Native Cloud Computing?

 

Some people may have doubts about this, "I work with cloud-native technologies like Docker and Kubernetes every day, so am I already involved in cloud computing?" Strictly speaking, I think cloud-native is not cloud computing, as the concepts I clarified in [Comparison of Cloud Computing and Cloud Native]. However, from a macro and broader perspective, when you work with cloud-native technologies, you are indeed participating in an important part of cloud computing.

 

Nowadays, various cloud vendors have their own containerization services and other cloud-native applications. When you use them, you are certainly involved in the cloud computing process. Also, you can refer to the diagram below for further clarification.

 

 

This content is an original creation of CSDN blogger "bluetata." If you wish to repost it, please make sure to provide proper attribution. If you have any corrections or questions, feel free to let us know.

 

The Advantages of Cloud Computing

 

Why do we choose cloud computing? Compared to traditional on-premises deployment, cloud computing has the following eight key advantages, which can help us reduce IT pressure and focus our efforts on business development.

 

Imagine you are the owner of a restaurant, and due to its success, you want to establish a branded chain of restaurants, which requires creating a brand website. In a traditional deployment, you would need to buy computer servers, lay network cables, and then find a development company to help build the website. Afterward, you would have to manage the website yourself and may even need to hire someone to maintain the hardware. Clearly, as a business owner, these are not the aspects you want to focus on. This is where the advantages of cloud computing come into play.

 

In summary, the key advantages of cloud computing are:

  1. High Availability
  2. Agility
  3. Scalability
  4. Elasticity
  5. Global Coverage
  6. Low Latency
  7. Fault Tolerance
  8. Predictable Costs

 

The Future Development and Challenges of Cloud Computing

 

The core technology trends that influence the development of society in the next twenty years are represented by four letters: ABCD

AI =Artificial Intelligence, B=Blockchain, C=Cloud, D=Data (Big Data)

 

Undoubtedly, you may have heard about the above statement, and ABCD is considered as the trend of future technological development. The current popularity of ChatGPT is driving continuous technological advancements in AI and GC (General Computing). So, what will be the future trend of cloud computing?

 

Before delving into the future trends of cloud computing, let's take a look at the predictions made by the Chinese Academy of Sciences more than ten years ago (in 2011).

From the article, it can be seen that over a decade ago, the author had already anticipated the trends of cloud computing development. Some of the cloud computing trends mentioned by the author have already been achieved, and some have even transitioned to the next stage. For example, the strongest demand for standardization is in IaaS, followed by PaaS. At present, IaaS has already been standardized to a large extent, with cloud platforms and infrastructure vendors collaborating to improve IaaS. Meanwhile, the current stage sees a proliferation of PaaS services.

 

Multi-cloud Trend

 

Tne section 2.5 of this article has already discussed cloud native and cloud computing. One of the major reasons why cloud native is gaining more and more attention is that enterprises do not want to be tied to a single large cloud platform. They desire autonomy in choosing their cloud providers. Enterprises want to choose platform A today and platform B when needed flexibly, or even adopt a multi-cloud strategy. Cloud-native can address this issue effectively.

 

In my opinion, a multi-cloud architecture will be a trend, and it may develop to a more mature stage. With the growth of the cloud computing market, enterprises will increasingly lean towards adopting multi-cloud strategies. This allows them to maximize resource utilization and flexibility.

 

Trends of Large and Small Players in the Industry

On April 25, 2023, China Mobile Cloud held a "Cloud Empowers the Future, Wisdom Empowers the World" conference, and thousands of people attended. After the conference, I watched the replay several times.

 

It can foresee that domestic giants will undoubtedly have their own cloud computing platforms, making a final push to seize the future cloud market. As for small and medium-sized enterprises, they will inevitably be dependent on these large cloud vendors, both in terms of technology and industry. Eventually, they will collaborate with these large cloud vendors to build PaaS services that align with market development and achieve win-win cooperation.

 

PaaS Service Future Development Trends

 

In Alibaba Group's 2022 financial report, the expenditure on PaaS-supported business forms accounted for 43% of the total cloud cost.

 

Another point emphasized in this article is about PaaS services. The author and other experts generally believe that PaaS will undoubtedly be a key focus of future development. PaaS services will become more granular and virtualized services will be more high-level. This speculation is supported by the data from Gartner, which shows that the PaaS service market is currently very diverse with rapid market growth.

Segmenting

Major Function

Market Shares

aPaaS

 

Application Platform as a Service (aPaaS) provides development SDKs and application runtime environments. Currently, most of the PaaS platforms in China are aPaaS platforms.

35%

iPaaS

Integration Platform as a Service (iPaaS) enables the integration of individual or multiple processes, services, applications, and data within a single or multiple companies, whether they are on-premises or cloud-based. It allows for the development, execution, and management of integration flows between these combinations.

14%

almPaaS

 

This provides a lightweight MVC (Model-View-Controller) Java programming framework, various metadata modeling, and engine services to simplify application development.

11%

bpmPaaS

Provides business process management development environment.

10%

Cloud Application Security Services

Secure development environment for cloud applications

9%

Cloud MFT Services

Provides a managed file transfer development environment

6%

BAPaaS

Provides a business analysis development environment

4%

DBPaaS

Provide database platform development environment

4%

Cloud Application Services Governance

Cloud application service management

3%

Cloud MOM Services

It provides message-oriented middleware management and development services

2%

Portal PaaS

Provides the Internet portal website and enterprise application system portal system development environment

2%

 

Data sourced from Gartner

 

 

The Rise of AI Drives AI-related Cloud Industry Services

The rise of AI will drive more PaaS services. As we can seen from Microsoft's early investment in ChatGPT, many major companies have already begun to lay the groundwork in the AI field. Shortly after the release of ChatGPT3, Microsoft quickly integrated OpenAI services into its own Azure platform and the Microsoft ecosystem. Additionally, some of you may have noticed the activity around AWS's SageMaker and Huawei's ModelArts.

 

Convergence Towards Various PaaS Service Providers' Camps

 

Currently, the domestic PaaS market has attracted numerous participants and has formed five major service provider camps:

  1. aPaaS Providers, such as ActionSoft AWS PaaS and Huawei Cloud Kaitian aPaaS, with a main focus on low-code or development frameworks, providing cloud-based rapid development environments.
  2. iPaaS Providers, such as Tencent Cloud, primarily focused on system integration and management of existing platforms.
  3. IaaS+ Providers, such as Alibaba Cloud, which tend to provide IaaS-based infrastructure services.
  4. IoT PaaS Providers, such as New H3C Green Oasis IoT Platform, which are oriented towards various cross-platform IoT applications.
  5. AI PaaS Providers, such as SenseTime, which offer high compatibility in algorithms, vertical and horizontal expansion, high availability, and environment migration.

 

Refer to Heibi research report, please indicate the source

 

Trends and Challenges in Enterprise Cloud Adoption

 

Enterprise cloud adoption has become an irreversible trend, with more and more companies paying attention to cloud computing due to the significant benefits it brings. However, for companies that have not yet migrated to the cloud, there are also some challenges to consider. Firstly, they need to think about how their business or products will transition to the cloud platform and which type of cloud platform to choose (public cloud, private cloud, or hybrid cloud). This is a decision that requires careful consideration.

 

Besides that, for companies that have already migrated to the cloud, achieving cost reduction and efficiency improvement is an eternal theme. This includes optimizing cloud computing expenses and the architecture after migration. Therefore, optimizing the architecture after migration while ensuring performance and reliability is a significant challenge.

 

Conclusion

 

This article primarily introduced the basic concepts and development history of cloud computing, including the categorization of cloud service models and deployment patterns, as well as the relationship between cloud computing and cloud native. Additionally, the article explored the advantages of cloud computing, such as high availability, elastic scalability, and rapid deployment, as well as the future trends and challenges of cloud computing, including multi-cloud trends, PaaS services, and the development of AI technology.

 

Overall, as an emerging computing model, cloud computing has gradually become the new favorite in various industries. Through cloud computing, companies can deploy IT infrastructure and application software resources on cloud platforms, enabling efficient, flexible, and secure operations. In the future, with the rise of AI technology and the acceleration of multi-cloud trends, cloud computing will have even broader application scenarios, requiring both vendors and users to work together to address issues such as security and data privacy.

 

 

References:

https://www.techtarget.com/whatis/feature/The-history-of-cloud-computing-explained

https://simplycoding.in/cloud-computing/

https://www.qianzhan.com/analyst/detail/220/220906-13c574b1.html

https://aws.amazon.com/cn/what-is/cloud-native/

https://www.c114.com.cn/live/t578.html

https://nvlpubs.nist.gov/nistpubs/legacy/sp/nistspecialpublication800-145.pdf

https://blog.kintone.com/business-with-heart/difference-saas-iaas-paas-apaas-hpapaas

Logo

更多推荐