Internet of ThingsAn Introduction to Cloud Computing

An Introduction to Cloud Computing

Companies and organizations traditionally relied on on-premise computing to perform various tasks and computations, where the organizations needed to maintain large servers and hardware setups. Cloud computing allows organizations to perform a variety of analytical computational, or service-based operations without the need to maintain sophisticated hardware setups at the premises. 

Cloud computing is the on-demand provisioning of system resources or services to users through remotely maintained cloud servers. The users can simply avail of the required services on demand without worrying about the hardware components on the server side. The cloud servers are maintained by the cloud service provider. Usually, multiple servers are maintained over a large geographical area. The user data is generally replicated and stored on different servers to maintain a backup of the data through redundant copies. This also prevents data loss in case a particular server faces any technical issues. 

Advantages of Cloud Computing

Cloud computing reduces the hardware cost that would have been required for setting up the on-premise system. Moreover, as the servers are maintained by the service provider, the maintenance cost is also avoided for the users. Cloud services follow a pay-per-use model where the users pay for only the services they use and for the time the services are active. Hence, cloud computing provides services at a very low cost.

Cloud computing also offers great scalability and flexibility to users. Based on the type of service required and the load, the allotted resources can be scaled vertically as well as horizontally. Also, cloud services provide various different services and virtual resources for performing a wide range of operations. Moreover, cloud computing increases the speed and agility of operations by providing essential computing resources and facilities. 

Cloud Computing Service Delivery Models

Based on the resources and the services required by users, there are three high-level cloud models – IaaS, PaaS, and SaaS.

The Infrastructure-as-a-Service (IaaS) model allows the users to use servers or storage in the cloud. In this model, users do not have to purchase and maintain their own IT hardware. IaaS is a model in which the customer pays for the resources (such as compute power, memory, storage, bandwidth, security devices, load balancers, etc) kept at the provider’s facility or wherever the provider keeps its hardware.

The Platform-as-a-Service (PaaS) model allows users to use the cloud as a platform to develop and sell software applications. PaaS is a cloud service where the customer gets a set of applications and product development tools hosted on the provider’s infrastructure. The customer can deploy acquired applications or those created using programming languages and tools supported by the provider. The consumer does not control, own or manage the underlying cloud infrastructure, including servers, OS, storage, security devices, and network, but has control over the deployed applications and possibly also the configurations of the hosting environment. 

The Software-as-a-Service (SaaS) model allows the users to use the provider’s applications running on a cloud infrastructure. The applications are accessible from various client devices through a Web browser. Generally, the majority of SaaS providers follow a Bring Your Own License (BYOL) policy, where the users need to purchase the license for the software they wish to use and the provider just gives an instance where the software can be operated.  

Based on the requirements, users can opt for any services offered by different delivery models. 

Virtualization in Cloud Computing

Virtualization is one of the most crucial techniques that make cloud computing possible. Virtualization technology separates the primary functions of computers, i.e., computing and technology implementation, from the physical infrastructure and the hardware resources with the help of a technology called Virtual Machine Monitor (VMM). The VMM is also known as a Hypervisor. 

Virtualization is implemented at various levels by emulating specific structures into corresponding software that appears to be working the same way as a physical structure does. These levels include:

  • Instruction Set Architecture (ISA) level
    • Virtualization at this level is implemented by transforming the physical architecture of the system’s instruction set completely into the software. The host machine is a physical platform comprising various components, including memory, process, Input/Output (I/O) devices, buses, etc. On this machine, the VMM installs guest systems. These guest systems issue instructions for the emulator to process and execute. The instructions are received by the emulator, which transforms them into a native instruction set. These native instructions are run on the host machine’s hardware. The instructions include both processor-oriented instructions and I/O-specific ones.
  • Hardware Abstraction Layer (HAL) level
    • In virtualization at HAL, the interpretation time of the instructions issued by the guest platform into the instructions of the host platform is reduced by taking advantage of the similarities that exist between the architectures of the systems. Virtualization utilizes the native hardware for all its computation and processing by mapping the virtual resources into physical resources. 
  • Operating System Level
    • It supports multiple operating systems and applications to be run simultaneously, which requires no system reboot or dual-boot setup. It gives the appearance of having multiple separate machines, each of which can be used as a normal system. The degree of isolation is also high, whereas the implementation is less risky and maintenance is easy. However, this virtualization technique permits you to have access to a raw computer, which requires a lot of time to be spent on the installation and administration of the virtual system before you can think of testing or running applications

In addition to these layers, virtualization can also be implemented at the Application layer and Library level. 

Virtualization is implemented by the hypervisor. Broadly, hypervisors are classified into two types – Type-1 Hypervisor (Bare Metal Hypervisor) and Type-2 Hypervisor (Hosted Hypervisor). The type-1 hypervisor runs directly on the host OS and has direct access to the underlying hardware devices. Whereas, the type-2 hypervisor runs on top of the host OS and uses hypercalls to access the host systems hardware devices. 

Endless Use Cases of Cloud Computing

Cloud Computing with its numerous features finds its application in nearly all the major sectors including healthcare, education, transport systems, energy systems, manufacturing industries, government, entertainment, and a lot to list. Cloud computing also provides pay-per-use compute services that can be used for performing various complex and extensive computational operations like training and testing of machine learning models, big data analysis, data extraction, and a lot more. Cloud computing is recently being clubbed with the Internet of Things (IoT) applications as well, where the data collected from various sensors can be easily processed, analyzed, and shared over the internet. 

Also Read: What Is Cloud Data Management And How Big Is The Industry?

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Exclusive content

- Advertisement -

Latest article

21,501FansLike
4,106FollowersFollow
106,000SubscribersSubscribe

More article

- Advertisement -