Cloud Model Notes
Cloud Model Notes
Cloud Model Notes
Distributed Systems:
It is a composition of multiple independent systems but all of them are
depicted as a single entity to the users. The purpose of distributed
systems is to share resources and also use them effectively and
efficiently. Distributed systems possess characteristics such as
scalability, concurrency, continuous availability, heterogeneity, and
independence in failures. But the main problem with this system was
that all the systems were required to be present at the same
geographical location. Thus to solve this problem, distributed
computing led to three more types of computing and they were-
Mainframe computing, cluster computing, and grid computing.
Mainframe computing:
Mainframes which first came into existence in 1951 are highly powerful
and reliable computing machines. These are responsible for handling
large data such as massive input-output operations. Even today these
are used for bulk processing tasks such as online transactions etc.
These systems have almost no downtime with high fault tolerance.
After distributed computing, these increased the processing
capabilities of the system. But these were very expensive. To reduce
this cost, cluster computing came as an alternative to mainframe
technology.
Cluster computing:
In 1980s, cluster computing came as an alternative to mainframe
computing. Each machine in the cluster was connected to each other
by a network with high bandwidth. These were way cheaper than those
mainframe systems. These were equally capable of high computations.
Also, new nodes could easily be added to the cluster if it was required.
Thus, the problem of the cost was solved to some extent but the
problem related to geographical restrictions still pertained. To solve
this, the concept of grid computing was introduced.
Grid computing:
In 1990s, the concept of grid computing was introduced. It means that
different systems were placed at entirely different geographical
locations and these all were connected via the internet. These systems
belonged to different organizations and thus the grid consisted of
heterogeneous nodes. Although it solved some problems but new
problems emerged as the distance between the nodes increased. The
main problem which was encountered was the low availability of high
bandwidth connectivity and with it other network associated issues.
Thus. cloud computing is often referred to as “Successor of grid
computing”.
Virtualization:
It was introduced nearly 40 years back. It refers to the process of
creating a virtual layer over the hardware which allows the user to run
multiple instances simultaneously on the hardware. It is a key
technology used in cloud computing. It is the base on which major
cloud computing services such as Amazon EC2, VMware vCloud, etc
work on. Hardware virtualization is still one of the most common types
of virtualization.
Web 2.0:
It is the interface through which the cloud computing services
interact with the clients. It is because of Web 2.0 that we have
interactive and dynamic web pages. It also increases flexibility
among web pages. Popular examples of web 2.0 include Google
Maps, Facebook, Twitter, etc. Needless to say, social media is
possible because of this technology only. It gained major popularity
in 2004.
Service orientation:
It acts as a reference model for cloud computing. It supports low-
cost, flexible, and evolvable applications. Two important concepts
were introduced in this computing model. These were Quality of
Service (QoS) which also includes the SLA (Service Level
Agreement) and Software as a Service (SaaS).
Utility computing:
It is a computing model that defines service provisioning techniques
for services such as compute services along with other major
services such as storage, infrastructure, etc which are provisioned
on a pay-per-use basis.
Thus, the above technologies contributed to the making of cloud
computing.
Guest Machine –
The virtual machines which are created on Host Machine is called Guest
Machine.
All memory references within a process are logical addresses that are
dynamically translated into physical addresses at run time.
A process may be broken into a number of pieces and these pieces need not
be continuously located in the main memory during execution
Demand Paging
The process of loading the page into memory on demand (whenever a page
fault occurs) is known as demand paging. The process includes the
following steps are as follows:
Advantages of Virtual Memory
More processes may be maintained in the main memory: Because we are going
to load only some of the pages of any particular process, there is room for more
processes. This leads to more efficient utilization of the processor because it is more
likely that at least one of the more numerous processes will be in the ready state at
any particular time.
A process may be larger than all of the main memory: One of the most
fundamental restrictions in programming is lifted. A process larger than the main
memory can be executed because of demand paging. The OS itself loads pages of a
process in the main memory as required.
It allows greater multiprogramming levels by using less of the available (primary)
memory for each process.
It has twice the capacity for addresses as main memory.
Disadvantages of Virtual Memory
It can slow down the system performance, as data needs to be constantly
transferred between the physical memory and the hard disk.
It can increase the risk of data loss or corruption, as data can be lost if the hard
disk fails or if there is a power outage while data is being transferred to or
from the hard disk.
It can increase the complexity of the memory management system, as the
operating system needs to manage both physical and virtual memory.
Swapping & Thrashing
Swapping is a process out means removing all of its pages from memory, or
marking them so that they will be removed by the normal page replacement
process. Suspending a process ensures that it is not runnable while it is swapped
out. At some later time, the system swaps back the process from the secondary
storage to the main memory. When a process is busy swapping pages in and out
then this situation is called thrashing.
Thrashing
At any given time, only a few pages of any process are in the main memory, and
therefore more processes can be maintained in memory. Furthermore, time is
saved because unused pages are not swapped in and out of memory .
3 .Storage structure of S3 bucket
AWS S3(Simple Storage Service) is a storage-as-a-service platform provided by
Amazon. S3 offers various types of storage classes such as:
Standard,
Standard IA,
Intelligent,
Reduced Redundancy, and Glacier.
Amazon S3 stores the data inside a bucket in the form of an object. The object
inside the S3 bucket can be accessed, versioned, and deleted as per requirement.
2. AWS CLI : Storing objects to an S3 bucket is also available with the help of
programming language-specific SDKs provided by AW, can easily import AWS
SDK and use it to store application files in S3.
Public Cloud
The public cloud makes it possible for anybody to access systems and services.
The public cloud may be less secure as it is open to everyone. The public cloud
is one in which cloud infrastructure services are provided over the internet to
the general people or major industry groups.
Private Cloud
Private cloud is a one-on-one environment for a single user (customer). There
is no need to share your hardware with anyone else. The distinction
between private and public clouds is in how you handle all of the hardware. It is
also called the “internal cloud” & it refers to the ability to access systems and
services within a given border or organization.
Community Cloud
The infrastructure of the community could be shared between the organization which
has shared concerns or tasks. It is generally managed by a third party or by the
combination of one or more organizations in the community .
Advantages of the Community Cloud Model
Cost Effective:
Shared resources:
Collaboration and data sharing:
Disadvantages of the Community Cloud Model
Limited Scalability:
Rigid in customization:
Multi-Cloud
Instead of merging private and public clouds, multi-cloud uses many public
clouds. Although public cloud providers provide numerous tools to improve the
reliability of their services, mishaps still occur. It’s quite rare that two distinct clouds
would have an incident at the same moment. As a result, multi-cloud deployment
improves the high availability of your services even more.
Advantages of the Multi-Cloud Model
Reduced Latency:
High availability of service: