Unit II
Unit II
Notes
Cloud Computing
[6CS4-06]
Prepared By:
Suniti Chouhan
Abhishek Jain
MISSION
M1. Focus on evaluation of learning outcomes and motivate students to inculcate research
aptitude by project based learning.
M2. Identify areas of focus and provide platform to gain knowledge and solutions based on
informed perception of Indian, regional and global needs.
M4. Develop human potential to its fullest extent so that intellectually capable and
imaginatively gifted leaders can emerge in a range of professions.
VISION
To become renowned Centre of excellence in computer science and engineering and make
competent engineers & professionals with high ethical values prepared for lifelong learning.
MISSION
M1: To impart outcome based education for emerging technologies in the field of computer
science and engineering.
M3: To provide platform for lifelong learning by accepting the change in technologies
COURSE OUTCOMES
CO1: Implement the cloud computing architecture i.e, the model, types of clouds, various
service models and programming concepts.
CO2: Acquire knowledge about the recent trends in area of cloud computing like Hadoop,
programming of Google app engine and virtualization technology and resource management.
CO3: Identify the various threats related to cloud and as well as disaster recovery related to
same.
CO4:Analyze the cloud platforms in IT industry and various case studies on the industries
providing cloud services.
1. To provide students with the fundamentals of Engineering Sciences with more emphasis in
Computer Science & Engineering by way of analyzing and exploiting Engineering challenge
5. To prepare students to excel in Industry and Higher education by Educating Students along
with High moral values and Knowledge.
MAPPING CO-PO
Cos/POs PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 3 3 3 3 3 2 2 2 1 2 2 3
CO2 3 3 3 3 3 2 2 2 1 2 2 3
CO3 3 3 3 3 2 2 2 2 2 2 2 3
CO4 3 3 3 3 2 2 2 2 2 2 2 3
PSO
PSO1: Ability to interpret and analyze network specific and cyber security issues, automation in
real word environment.
PSO2: Ability to Design and Develop Mobile and Web-based applications under realistic
constraints.
SYLLABUS
Software-as-a-Service (SaaS): It is the top layer of the reference model contains services
delivered at the application level. These are Web-based applications that rely on the cloud to
provide service to end users.
Applications: The horsepower of the cloud provided by IaaS and PaaS solutions allows
independent software vendors to deliver their application services over the Internet.
o The reference model also introduces the concept of everything as a Service (XaaS). Cloud
services from different providers can be combined to provide a completely integrated solution
covering all the computing stack of a system.
oIaaS providers offer virtual machines where PaaS solutions are deployed. When there is no need
for a PaaS layer it is possible to directly customize the virtual infrastructure with the software
stack needed to run applications.
A distributed system composed of Web servers, database servers and load balancers on top of
which pre-packaged software is installed to run Web applications. This possibility has made cloud
computing an interesting option for reducing initial capital investment in IT.
Types of Cloud
Cloud types are estimated by the deployment models. According to the NIST cloud can be
classified as public, private, community or hybrid based on model of deployment.
• Public cloud: The cloud infrastructure is made available to the general public or a large industry
group and is owned by an organization selling cloud services.
Hybrid cloud: The cloud infrastructure is a composition of two or more clouds (private,
community, or public) that remain unique entities but are bound together by standardized or
proprietary technology that enables data and application portability.
Community cloud: The cloud infrastructure is shared by several organizations and supports a
specific community that has shared concerns like mission, security requirements, policy, and
compliance considerations. It may be managed by the organizations or a third party and may exist
on premise or off premise.
Services models:Cloud service provider‟s begins with the boundary between a client's network,
management, and responsibilities. With the development of cloud computing different vendors
comes in the market that have different services associated with them. The collection of services
offered by them is called the service model.
Three service types have been accepted universally which are as such:
• Infrastructure as a Service:IaaS provides virtual machines, virtual storage, virtual
infrastructure, and other hardware assets as resources that clients can run. The IaaS service
provider manages all the infrastructure and the client is responsible for all other aspects of the
deployment. This can include the operating system, applications, and user interactions with the
system. Examples of IaaS service providers include:
o Amazon Elastic Compute Cloud (EC2)
o Eucalyptus
oGoGrid
oFlexiScale
oLinode
These three development layers are implemented with virtualization and standardization of
hardware and software resources provisioned in the cloud.
The services of public, private and hybrid clouds are sent to users through networking support
over the Internet and intranets involved.
The infrastructure layer is built with virtualized compute, storage and network resources. The
generalization of hardware resources is meant to provide the flexibility to users. Internally
virtualization provides automated provisioning of resources and optimizes the infrastructure
management process.
The platform layer is for general purpose and repeated usage of the collection of software
resources. This layer provides users with an environment to develop their applications to test
operation flows and to monitor execution results and performance.
The application layer is designed with a collection of all needed software modules for SaaS
applications. Service applications in this layer works as daily office management work and it is
also used by enterprises in business marketing and sales, consumer relationship management
(CRM), financial transactions and supply chain management.
Market-Oriented Cloud Architecture:
Cloud providers design different QoS parameters for every consumer as required by consumer in
SLAs. To complete the design providers cannot deploy traditional system-centric resource
[VI Semester] [2020 – 21] Page 27
JAIPUR ENGINEERING COLLEGE AND RESEARCH CENTRE
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
management architecture. But instead of that market-oriented resource management is used to fix
the supply and demand of cloud resources market equilibrium between supply and demand. The
designer needs to provide feedback on economic reasons of both consumers and providers. To
promote QoS based resource allocation mechanisms.
Clients get benefit by the reduction in cost given by providers and which could lead more
competition in the market and thus lower prices. Such type of clouds are basically built by using
the following things: Users submit service requests from anywhere in the world to the data center
and cloud to be processed. The SLA resource allocator acts as the interface between the data
center, cloud service provider and external users.
The mechanisms to support SLA-oriented resource management is as follow:
When a service request is first submitted the service request examiner interprets the submitted
request for QoS requirements before determining whether to accept or reject the request.
The request examiner ensures that there is no overloading of resources.
.It also needs the latest status information regarding resource availability and workload processing
in order to make resource allocation decisions effectively.
Then it assigns requests to VMs and determines resource entitlements for allocated VMs. The
Pricing mechanism decides how service requests are charged.
Submission time.
Pricing rates.
Availability of resources.
Architectural Design Challenges:
There are six open challenges in cloud architecture development and all these challenges are as
such given below:
Service Availability and Data Lock-in Problem
Data Privacy and Security Concerns
Unpredictable Performance and Bottlenecks
Distributed Storage and Widespread Software Bugs
Cloud Scalability, Interoperability, and Standardization
Software Licensing and Reputation Sharing
Cloud Programming and Software
Input reader: The input reader divides the input into parts called splits and the framework assigns
one split to each Map function. It reads data from distributed file system and generates key/value
pairs. Example: Read a directory full of text files and return each line as a record.
Map function: The Map function takes a series of key/value pairs to processes each to generate
zero or more output key/value pairs. The I/O of the map are may be different from each other. If
the application is doing a word count the map function than it would break the line into words and
output a key/value pair for each word. Each output pair would contain the word as the key and the
no. of instances of that word in the line as the value.
Partition function: The partition function is given the key with the number of reducers and it
returns the index of the desired reducer. And the key is hashed to modulo the number of reducers
using hash value. Partition function gives an approximately uniform distribution of data per
horizontal partition for load-balancing purposes else the MapReduce operation may be waiting for
slow reducers to finish the process. The data is exchanged between the Map and Reduce to move
the data from the map node to the fragment where it will be reduced.
Comparison function: The input for each Reduce is dragged from the machine where the Map
works and it is sorted using the application's comparison function.
• Job Submission: Jobs has to be submitted from a user node to the Job Tracker node:
o A slave node asks for a new job ID from the Job Tracker and computes input file splits. o The slave
node copies some resources like job‟s JAR file, configuration file and
computed input splits for the Job Tracker‟s file system.
o Slave node submits the job to the Job Tracker by calling the „submitJob()‟ function.
• Task assignment: Job Tracker performs the localization operation on the data before assigning the
tasks to the Task Trackers. The Job Tracker also creates reduce tasks and assigns them to the Task
Trackers.
Task execution: The control of flow to execute task in Task Tracker is done by copying the job JAR
file to its file system. Instructions are given in the job JAR file and are executed after launching Java
Virtual Machine (JVM) to run reduce task.
Task running check: A task running check is done by after receiving messages by the Job Tracker and
which are send from the Task Trackers. Each message informs Job Tracker that the sending Task
Tracker is working properly and also informs Task Tracker is ready to run a new task.
High level Language for Cloud:
High Level Languages for Cloud are mainly developed by the Google and Yahoo. In this section we
will discuss about the High level languages available in the market for cloud.