Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 32

KGiSL Institute of Technology

(Approved by AICTE, New Delhi; Affiliated to Anna University, Chennai)


Recognized by UGC, Accredited by NBA (IT)
365, KGiSL Campus, Thudiyalur Road, Saravanampatti, Coimbatore – 641035.

Department of Computer Science and Engineering

Name of the Faculty : Ms. T.N.Aruna

Subject Name & Code : CS8791/ Cloud Computing

Branch & Department : Computer Science and Engineering

Year & Semester : IV / VII

Academic Year :2023-24

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Course Outcome

CO 1 Explain the fundamentals of Cloud Computing.K2 LEVEL

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Syllabus
UNIT I INTRODUCTION
Introduction to Cloud Computing – Definition of Cloud – Evolution
of Cloud Computing –Underlying Principles of Parallel and
Distributed Computing – Cloud Characteristics – Elasticity in Cloud
– On Demand Provisioning

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Distributed Processing
• The term “distributed computing” encompasses any architecture or
system that allows the computation to be broken down into units and
executed concurrently on different computing elements, whether these
are processors on different nodes, processors on the same computer, or
cores within the same processor.
• “Distributed” 🡪location of the computing elements is not the same.
• Such elements might be heterogeneous in terms of hardware and
software features
CS8791/CC/IVCSE/VIISEM/KG-KiTE
Distributed Computing
• A distributed system is one in which hardware or software
components located at networked computers communicate and
coordinate their actions only by message passing
• In the term distributed computing, the word distributed means
spread out across space. Thus, distributed computing is an activity
performed on a distributed system
• Those networked computers may be in the same room, same campus,
same country or in different country

UNIT-I CLOUD COMPUTING 5


Elements of Distributed Computing
• “A distributed system is a collection of independent computers
that appears to its users as a single coherent system.”

• “A distributed system is one in which components located at


networked computers communicate and coordinate their actions
only by passing messages.”

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Components of a Distributed System

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Components of a Distributed System

• Applications
• Middleware
• Operating System
• Hardware

UNIT-I CLOUD COMPUTING 8


Components of a Distributed System

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Architectural Styles for Distributed
Computing

• Architectural styles for distributed systems are helpful in understanding


the different roles of components in the system and how they are
distributed across multiple machines.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Component & Connectors
• A component represents a unit of software that encapsulates a
function or a feature of the system.
Eg: programs, objects, processes, pipes, and filters.

• A connector is a communication mechanism that allows the


cooperation and coordination among components.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Architectural Styles for
Distributed Computing

• We organize the architectural styles into two major classes:

● Software architectural styles


(Relates to the logical organization of the software)
● System architectural styles
(describe the physical organization of distributed software systems)

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Software Architectural Styles

CS8791/CC/IVCSE/VIISEM/KG-KiTE
1.Data-Centered Architectures
• Identifies the data as the fundamental element of the software
system
• Repository
• central data structure
• independent component
• Black Board Architectural Style
• Knowledge sources
• Blackboard
• Control

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Repository
• The central data structure, Which
represents the current state of the
system, and a collection of
independent components, which
operate on the central data.

• The ways in which the


Independent components interact
with the central data structure can
be very heterogeneous.
CS8791/CC/IVCSE/VIISEM/KG-KiTE
Blackboard styles
• Blackboard architectural style in which data store is active and
clients are passive.
• Logical flow is determined by the current data status in data store

1. Knowledge Sources, ( Listeners or Subscribers) are distinct and


independent units.
They solve parts of a problem and aggregate partial results.
Interaction among knowledge sources takes place uniquely through
the blackboard.
CS8791/CC/IVCSE/VIISEM/KG-KiTE
BB Architecture
2. Blackboard
This represents the data structure
that is shared among the knowledge
sources and stores the knowledge base of
the application.
3. Control
The control is the collection of
triggers and procedures that
govern the interaction with the
blackboard and update the status of
the knowledge base

CS8791/CC/IVCSE/VIISEM/KG-KiTE
2.Data-Flow Architectures
• The availability of data that controls the computation.
• They incorporate the pattern of data flow
• Their design is determined by an orderly motion of data from
component to component, which is the form of communication
between them.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Batch-Sequential Style
• Ordered sequence of separate programs executing one after the
other.
• Uses Pipelining concept🡪 previous component output is fed as
current components input
• Popular in the mainframe era
• Eg: pre-filter, analyze, and post-process data

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Concept of Pipelining

• In computing, a pipelining is a set of data processing elements


connected in series, so that the output of one element is the input of
the next one.
• The elements of a pipeline are often executed in parallel or in time-
sliced fashion; in that case, some amount of buffer storage is often
inserted between elements

UNIT-I CLOUD COMPUTING 20


Pipe-and-Filter Style
• Each component of the processing chain is called filter, and the
connection between one filter and the next is represented by a
data stream.
• With respect to the batch-sequential style, data is processed
incrementally and each filter processes the data as soon as it is
available on the input stream: as soon as one filter produces a
consumable amount of data, the next filter can starts its
processing.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Examples
• A classic example of this architecture is the microprocessor pipeline
where multiple instructions are executed at the same time by
completing a different phase of each of them.

• Eg: lex/yacc model is based on a pipe of the following phases:


scanning | parsing | semantic analysis

CS8791/CC/IVCSE/VIISEM/KG-KiTE
3.Virtual Machine Architectures
• VM that simulates features that are not available in the hardware or
software
• Applications and systems are implemented on top of this layer and
become portable over different hardware and software environment.
• The application defines its operations and state in an abstract format
which is interpreted by the virtual machine engine.
• The interpretation of a program constitutes its execution.
• Eg: rule-based systems, interpreters, and command language
processors.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Rule-Based Style

• Programs are expressed in the form of rules or predicates that hold true.

• The input data is represented by a set of assertions or facts that the


inference engine uses to activate rules or to apply predicates, thus
transforming data.
• The output can either be the product of the rules activation or a set of
assertions that holds true for the given input data.
• Applications: Network Intrusion Detection Systems (NIDS)

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Interpreter Style
• Presence of an engine that is used to interpret a pseudo program
expressed in a format acceptable for the interpreter.

Four main components that is exhibited are:


● The interpretation engine

● An internal memory

● A representation of the current state of the engine

● Representation of the current state of the program being executed

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Pros and Cons of VM Architecture
Advantages:
This design has the major advantage of decoupling applications
from the underlying hardware and software environment.

Disadvantages:
•Slow-down in performance.

Specific features of the underlying system might not be accessible.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
4.Call and Return Architectures
• Systems that are composed by components mostly connected
together by method calls.

a.Top-Down Style:
• Divide-and-conquer approach for problem resolution One large
main program that accomplishes its tasks by invoking sub-
programs or procedures.
• Components- procedures and sub-programs and connections are
method calls or invocation (Remote method invocation)

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Call and Return Architectures
b.Object-Oriented Style:
•Systems are specified in terms of classes and implemented in terms of objects.

Object instances become responsible for hiding their internal state


representation and for protecting its integrity while providing operations to


other components

Disadvantages:

• identity of an object should be known

• shared objects need to be carefully designed- Consistency

CS8791/CC/IVCSE/VIISEM/KG-KiTE
c.Layered Style
• Implementation of software systems in terms of layers, which
provide a different level of abstraction of the system.

• Stack of layers —one for each level of abstraction components are


the layers and the connectors are the interfaces and protocols used
between adjacent layers.

• User or client- interacts with layer at the highest abstraction

CS8791/CC/IVCSE/VIISEM/KG-KiTE
5.Independent Components
a. Communicating Processes:
•Components are represented by independent processes that provide inter-process
communication (IPC) facilities for coordination management.
•Peer-to-peer or client-server

b. Event Systems:
•Each component also publishes (or announces) a collection of events that other
components can register with.
•During the activity of a component, a specific runtime condition can activate one of the
exposed events, thus triggering the execution of the callbacks registered with it.
•Advantage: It increases the development of open systems: new modules can be added
and easily integrated into the system as long as they have compliant interfaces for
registering to the events.

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Time To Think (T2T)
What is batch sequential style? (BT Level- Remember)
a) In batch sequential components are independent programs
b) Assumptions is that each step runs to completion before the
next step starts
c) All of the mentioned
d) None of the mentioned

Ans: C

CS8791/CC/IVCSE/VIISEM/KG-KiTE
Time To Think (T2T)
In which of the following style new clients can be added easily? (BT
Level- Remember)
a) Data Flow Architecture
b) Call and Return Architecture
c) Data Centered Architectures
d) None of the mentioned
Ans: C

CS8791/CC/IVCSE/VIISEM/KG-KiTE

You might also like