DEV Community

Cover image for A Comprehensive Overview of Cloud Computing
Oluwanifemi Loveth
Oluwanifemi Loveth

Posted on

A Comprehensive Overview of Cloud Computing

Cloud computing has become a huge part of our everyday lives, from saving our files and documents on Google drive, and streaming a movie on Netflix, to using various cloud-based apps, cloud computing has come to make life easier and better.

It is of immense benefit not only to individuals but also to organizations in different industries such as healthcare and fintech companies, developers, and researchers. There are enormous advantage and possibilities that cloud technology offers.

Are you new to the world of cloud computing and wondering what it is all about? Dive into this article that introduces you to the world of cloud and what it entails.

What is Cloud Computing?

In simple terms, Cloud computing is the on-demand availability of computing services such as servers, databases, storage, networking, infrastructure, etc, over the internet. The aim of this is to offer flexible resources, faster innovation, and economies of scale.

Cloud computing is also known as Internet-based computing; a system where resources are provided as a service through the internet to the user. These services are stored on a physical server and managed by a cloud service provider.

Small and large businesses, companies and organizations rather than spending heavily on having their own physical data centers to host their severs, databases, storage etc, cloud computing allows them to save time, space and money by renting IT.
It relieves businesses and individuals the stress of managing their resources by themselves as it allows them only pay for what they use. It also offers flexibility and faster innovation. Use cases for cloud computing include file storage, disaster recovery, softwware testing and development, etc.

History of Cloud Computing

Cloud computing can be traced back to the early 1950s with mainframe computing (when universities and companies rented out computation time on mainframe computers). Then, renting was one of the only ways to access computing resources as computing technology was too large and expensive to be owned or managed by individuals.

In the early 1960s, computer scientists like Dr. Joseph Carl Robnett Licklider, an American computer scientist and psychologist known as the "father of cloud computing", and John McCarthy began to propose ideas that anticipated some of the major features of cloud computing today.

Cloud computing became a thing in the early 2000s with Amazon Web Services which started cloud-based storage and computing services in 2002. In 2006, it introduced Elastic Compute Cloud (EC2) and Simple Storage Service (S3).
That same year, Google introduced the Google Apps suite (now called Google Workspace), a collection of SaaS productivity applications. In 2009, Microsoft started its first SaaS application, Microsoft Office 2011.

Moving forward, new SaaS products and businesses also emerged based on the novel opportunities of these cloud providers, such as Netflix’s streaming services in 2007, Spotify in 2008, Dropbox in 2009, Zoom in 2012, and Slack in 2013.

Today, cloud-based IT infrastructure and cloud-based applications have become a popular choice for both businesses and individual users and their market share is expected to grow.

Other Cloud service providers that also came up were Google Cloud Platform in 2008, Alibaba Cloud in 2009, Windows Azure (now Microsoft Azure) in 2010, IBM’s SmartCloud in 2011, and DigitalOcean in 2011.
And its not going to end there, according to Gartner, worldwide end-user spending on public cloud will total 679 billion USD and has been predicted to exceed 1 trillion USD in 2027.

How does Cloud Computing Work?

Before the advent of cloud computing, people (indivuduals and businesses) used to buy and maintain the software and hardware that they needed to use, using on-premises data centres (physical centres). They are involved in the management of all the required applications throughout their entire life cycle.

Now, with the presence of cloud-based services, they now have access to a stream of on-demand computing resources accessible through the internet, and are able to scale up or down as demanded. This happens through the use of remote network servers that are hosted on the internet. But if we choose Cloud Computing, a cloud vendor is responsible for the hardware purchase and maintenance.

What is a Cloud Service Provider

A cloud service provider is a company that provides computing resources such as storage, servers etc to individuals and businesses who need them on a pay-as-you-go model. They provide a variety of software and platforms as a service. They are also responsible for the management of physical infrastructure at data centers.
Leading Cloud service provides in Nigeria include;

  • Amazon Web Services (aws),
  • MicrosftAzur,
  • Google cloud services, etc.
  • IBM cloud
  • DigitalOcean
  • VMware

Cloud Computing Service Deployment Models

  1. Public Cloud: This is the process by which a cloud provider provides computing services such as applications, storage and services, to a customer over the internet. The IT infrastucture of is managed by the cloud provider and available to different tenants.

  2. Private Cloud: These are computing resources provided for excusive use by a single enterprise. It may be managed by the organization itself or by a cloud provider. A private cloud provides the highest level of security and control.

  3. Hybrid Cloud: This is a combination of both the public and private cloud models. This happens when an organization uses a mixture of both cloud models to meet their business needs. This gives a business greater flexibility, more deployment options and optimization of infrastructure.

  4. Multi-Cloud: This entails the use of more than one cloud provider. For example Amazon Web services (AWs) and Microsoft Azure.

Types of Cloud Computing Services

There are three/four main types of cloud computing services or cloud service models;

1. Infrastructure as a Service (IaaS)
This provides access to computing infrastructure such as servers, networking, storage, operating systems, and other infrastructural components via the internet. The main advantage of this is that it relieves users of the need to buy and maintain physical servers, while providing flexibility to scale and shrink resources as needed.
It is more like renting infrastructure in the cloudbutyou have control over applications, and development frameworks.

2. Software as a Service (SaaS)
This delivers cloud-based software services or cloud applications to end-users over the internet. These applications include; GitHub, Slack, Dropbox, Wordpress etc. The software is fully managed and maintained by the software provider and uses have access on subscription or pay-s-you-go basis. The benefit of SaaS include automatic upgrade and protection from data loss.

Today, SaaS is the primary delivery model for most commercial software, and SaaS applications are popular among businesses and general users because they’re often easy to adopt, accessible from any device, and offer both free, premium, and enterprise versions of their applications.

3. Platform as a Service (PaaS)
This provides users with an on-demand computing platform (hardware, software, infrastructure, development tools) for running, developing and deploying applications without the cost, complexity and inflexibility of maintaining that platform on-premises. This is mostly used by software developers and development teams where Developers focus on building and managing applications, while the provider handles infrastructure management.
The benefit of it is that it speeds up the development process and allows for easy collaboration among developers.

Benefits of Cloud Computing

Cloud computing offers many benefits which includes the following;

  1. Tools development: A large number of cloud-based tools have been developed across various industries such as apps for project management, productivity, video-conferencing, messaging etc,

  2. Data backup and restoration: Cloud computing makes it easy for individuals or businesses to backup and restore their data in case of data loss or system failure, hardware malfunctions or user error.

  3. Storage: Individuals and businessses can store limitless amount of data in the cloud as the cloud offers storage for all kinds of data such as documents, photos, videos etc.

  4. Saves cost: For businesses, Cloud computing removes the need for capital expenses of setting up and running physical data centers. In addition, you only pay for computing services as you use them (pay-as-you-go), thus it saves cost significantly.

  5. Speed: With cloud computing, resources can be accessed in seconds with a few clicks, making it easy for developers to accelerate development with quick deployments.

  6. Scalability/flexibility: A business can scale up or down on some resources depending on need, without having to invest in physical infrastructure.

  7. Collaboration: Cloud computing fosters collaboration as teams can access and share data from anywhere in the world from any device—as long as they have an internet connection.

  8. Productiviy: Cloud computing gives room to focus more on the actual business goals and objectives and strategic tasks as it takes care of the maintenance of the system, upkeeps, updates and other operational tasks leading to more productivity.

  9. Security: Cloud providers offer a broad set of policies, technologies, and controls that strengthen your data security giving it adequate protection.

Cloud Computing Limitations and Challenges

Like all good things, cloud computing also has its downsides:

  1. Data security and privacy: When cloud configuration and management are not in order, it could result in data privacy leaks. Cloud users and cloud providers both have a role to play in ensuring data security.

  2. Technical issues: Cloud computing relies on internet connectivity to work well. Poor internet connections, downtimes due to natural disasters, slower performance and other technical issues can affect your cloud operations.

  3. Cloud providers defaults: Technological difficulties, downtimes, cyber attacks faced by cloud providers can affect their users as well, hence cloud service providers should have real-time SaaS monitoring policies.

  4. Lack of skilled professionals: Businesses and corporations are sometimes short of skilled cloud professionals that can handle the demands of the industry.

  5. Limited control: The standardized services and platforms offered by cloud service providers makes it difficult for organizations to to modify cloud services to precisely match their needs if they have special requirements or compliance requirements.

  6. Hidden costs: Even though cloud providers offer pay-as-you-go pricing model, sometimes there are hidden charges such as data transfer fees, additional storage costs, fees for specialized support or technical assistance, etc which increases costs for users.

Conclusion

No doubt, cloud computing has quite some advantages for businesses and individuals alike, its limitations notwithstanding. Whoever you are in whatever field you’re in, feel free to begin to explore some of the ways in which you can enjoy more of these benefits that the cloud provides.

Was this helpful to you? Let me know in the comment section.

Top comments (0)