Cloud computing is an umbrella term that encapsulates the computing services that are accessed via internet on-demand basis; the computing resources including-servers, data storages and networking capabilities for such services can be located at the same location or different parts of the world which are termed as data centers and are managed by the Cloud Service Provider. The user can access these services on monthly basis or usage basis as per the configuration of system they are opting.
In general, the user pays on the basis of CPU hours for these services. CPU hours is the amount of time for which the CPU has been utilized for processing the given set of instructions. For bigger CPUs with multi cores, charge per CPU hours will be more compared to lower configuration CPUs. The user for such services can be an enterprise or even a student.
In the world, where everything is shifted to a digital platform, the explosion of data created the need for better computational resources. The capital investment for owning such a large system and maintaining is huge, in these scenarios the cloud computing is the solution as the resources are accessed on-demand basis. For a student like you and me, cloud computing enables us to utilize these resources for our research work where we can give run for large programs and solve computationally bulky problems which are generally not feasible in personal systems.
The cloud computing provides the edge over the traditional information technology by :-
- Cost – eliminates capital expenses of buying hardware and software and setting up, running and maintaining these resources.
- Performance – the data centers are constantly upgraded with latest generation technology which enhances the efficiency and performance.
- Flexibility – the computational resources can be modified to higher or lower computing power, storage and memory as per the requirement.
- Speed – the services are provided on-demand basis, so every thing is just a click away.
- Security – the data centers are equipped with cutting edge security options, data of the users are secured with the policies the service provider provides.
Types of cloud computing
The cloud computing can be classified based on the cloud computing architecture or the nature of clouds that is being implemented.
Based on the nature of clouds and management required for them, the cloud computing can be classified as :-
- Public cloud – Public clouds are completely owned by the cloud service provider, which delivers it’s computing resources like servers, storage and applications over the internet. Microsoft Azure, IBM’s Blue Cloud, Sun Cloud, and Google Cloud are public cloud.
- Private cloud – Private cloud refers to computing resources which are used and accessed exclusively by a single enterprise or organization. The servers of these clouds can be physically located on the company’s data center and are accessed via private network.
- Hybrid cloud – Hybrid cloud as the name suggest is the combination of both public and private clouds such that resources and data are distributed between the two. It provides the scalability and flexibility of public clouds with the reliability and security of private clouds.
Based on type of resources being delivered, the cloud computing can be classified as :-
- Infrastructure as a Service (IaaS) – IaaS is the most raw form of cloud computing, where the user access the computational resources like servers, storage, memory , networking and software support on-demand or rent basis from the cloud service provider. The service providers host and maintains the complete service.
- Software as a Service (SaaS) – SaaS provides software application as the over the internet on-demand basis. It delivers complete user ready application via internet without the need to download the application in the system. The service providers host and manages the software application and infrastructure for it.
- Platform as a Service (PaaS) – PaaS is the cloud computing service where the environment including the infrastructure and software support that is needed for developing , testing and managing software applications are provided by the service provider. It enables the developers to create web or mobile based apps without setting up the complete infrastructure for them.
With the advancement in cloud computing, the hardware is no more the limitation for any user, as one can access the 1000s core CPU whenever they need without actually having the those CPU with them. It is like owning a system as per the required specification on a rental basis like an apartment or cars. This enables the users to configure the system whenever required as per the need and pay for that only.
P.S.- Sky is the limit may be that was coined for cloud computing.