UNIT 2 Cloud Computing
UNIT 2 Cloud Computing
UNIT 2 Cloud Computing
Unit -2
Erase of computing
The two fundamental and dominant model of computing are: Sequential and
parallel. The sequential computing are begun in 1940s; parallel (and distributed)
computing are followed it within a decade. The four key elements of computing
developed during these eras were: architectures, compilers, applications, and
problem – solving environments.
What is computing?
Type of computing
1. Parallel Computing
In parallel computing multiple processors performs multiple tasks
assigned to them simultaneously. Memory in parallel systems can either
be shared or distributed. Parallel computing provides concurrency and
saves time and money.
2. Distributed Computing:
In distributed computing we have multiple autonomous computers which
seems to the user as single system. In distributed systems there is no
shared memory and computers communicate with each other through
message passing. In distributed computing a single task is divided among
different computers.
memory
Computer communicates
with each other through
5. Processors communicate with each other through bus message passing.
Improves system scalability,
fault tolerance and resource
6. Improves the system performance sharing
Parallel Processing
Parallel processing can be described as a class of techniques which enables the system to achieve
simultaneous data-processing tasks to increase the computational speed of a computer system.
A parallel processing system can carry out simultaneous data-processing to achieve faster
execution time. For instance, while an instruction is being processed in the ALU component of
the CPU, the next instruction can be read from memory.
The primary purpose of parallel processing is to enhance the computer processing capability and
increase its throughput, i.e. the amount of processing that can be accomplished during a given
interval of time.
The following diagram shows one possible way of separating the execution unit into
eight functional units operating in parallel.
The operation performed in each functional unit is indicated in each block if the
diagram:
Cloud computing unit2 Rita Vadhvana
o The adder and integer multiplier performs the arithmetic operation with integer
numbers.
o The floating-point operations are separated into three circuits operating in
parallel.
o The logic, shift, and increment operations can be performed concurrently on
different data. All units are independent of each other, so one number can be
shifted while another number is being incremented.
Cloud computing unit2 Rita Vadhvana
Example Z = sin(x)+cos(x)+tan(x)
The system performs different operations on the same data set. Machines
built using the MISD model are not useful in most of the application, a few
machines are built, but none of them are available commercially.
4. Multiple-instruction, multiple-data (MIMD) systems –
An MIMD system is a multiprocessor machine which is capable of executing
multiple instructions on multiple data sets. Each PE in the MIMD model has
separate instruction and data streams; therefore machines built using this
model are capable to any kind of application. Unlike SIMD and MISD
machines, PEs in MIMD machines work asynchronously.
Cloud computing unit2 Rita Vadhvana
In this model (tightly coupled multiprocessor systems), all the PEs are
connected to a single global memory and they all have access to it. The
communication between PEs in this model takes place through the
shared memory; modification of the data stored in the global memory by
one PE is visible to all other PEs. Dominant representative shared
memory MIMD systems are Silicon Graphics machines and Sun/IBM’s
SMP (Symmetric Multi-Processing).
which each of the PEs can be easily isolated. Moreover, shared memory
MIMD architectures are less likely to scale because the addition of more
PEs leads to memory contention. This is a situation that does not happen
in the case of distributed memory, in which each PE has its own memory.
As a result of practical outcomes and user’s requirement, distributed
memory MIMD architecture is superior to the other existing models.
• Data parallelism
• Process parallelism
• Parmer-and-worker model
These three models are all suitable for task-level parallelism. In the case
of data parallelism, the divide-and-conquer technique is used to split data
into multiple sets, and each data set is processed on different PGs using
the same instruction. This approach is highly suitable to processing on
machines based on the SIMD model.
At the very bottom layer, computer and network hardware constitute the
physical infrastructure; these components are directly managed by the
operating system that provides the basic services for: inter-process
communication, process scheduling and management and resource
management in terms of file system and local devices.
Cloud computing unit2 Rita Vadhvana
The use of well-known standards at the operating system, and even more at the
hardware and network level, allows easy harnessing of heterogeneous and their
organization into a coherent and uniform system.
The middleware layer leverages such services to build a uniform environment for
the development and deployment of distributed applications. This layer supports
the programming paradigms for distributed systems.
The top of the distributed system stack is represented by the applications and
services designed and developed to use the middleware. These can serve
several purposes and often expose their feature in the form of graphical user
interface accessible locally or through the internet via a web browser.
Cloud computing unit2 Rita Vadhvana
Types of Components
There are two types of components −
A central data structure or data store or data repository, which is responsible for
providing permanent data storage. It represents the current state.
A data accessory or a collection of independent components that operate on
the central data store, perform computations, and might put back the results.
Interactions or communication between the data accessory is only through the data
store. The data is the only means of communication among clients. The flow of control
differentiates the architecture into two categories −
Advantages
Provides data integrity, backup and restore features.
Provides scalability and reusability of agents as they do not have direct
communication with each other.
Reduces overhead of transient data between software components.
Cloud computing unit2 Rita Vadhvana
Disadvantages
It is more vulnerable to failure and data replication or duplication is possible.
High dependency between data structure of data store and its agents.
Changes in data structure highly affect the clients.
Evolution of data is difficult and expensive.
Cost of moving data on network for distributed data.
Advantages
Provides scalability which provides easy to add or update knowledge source.
Provides concurrency that allows all knowledge sources to work in parallel as
they are independent of each other.
Supports experimentation for hypotheses.
Supports reusability of knowledge source agents.
Disadvantages
The structure change of blackboard may have a significant impact on all of its
agents as close dependency exists between blackboard and knowledge source.
It can be difficult to decide when to terminate the reasoning as only approximate
solution is expected.
Problems in synchronization of multiple agents.
Major challenges in designing and testing of system.
such as compilers and business data processing applications. There are three types of
execution sequences between modules−
Batch sequential
Pipe and filter or non-sequential pipeline mode
Process control
Batch Sequential
Batch sequential is a classical data processing model, in which a data transformation
subsystem can initiate its process only after its previous subsystem is completely
through −
The flow of data carries a batch of data as a whole from one subsystem to
another.
The communications between the modules are conducted through temporary
intermediate files which can be removed by successive subsystems.
It is applicable for those applications where data is batched, and each
subsystem reads related input files and writes output files.
Typical application of this architecture includes business data processing such
as banking and utility billing.
Advantages
Provides simpler divisions on subsystems.
Each subsystem can be an independent program working on input data and
producing output data.
Disadvantages
Provides high latency and low throughput.
Does not provide concurrency and interactive interface.
External control is required for implementation.
Filter
A filter is an independent data stream transformer or stream transducers. It transforms
the data of the input data stream, processes it, and writes the transformed data stream
over a pipe for the next filter to process. It works in an incremental mode, in which it
starts working as soon as data arrives through connected pipe. There are two types of
filters − active filter and passive filter.
Active filter
Active filter lets connected pipes to pull data in and push out the transformed data. It
operates with passive pipe, which provides read/write mechanisms for pulling and
pushing. This mode is used in UNIX pipe and filter mechanism.
Passive filter
Passive filter lets connected pipes to push data in and pull data out. It operates with
active pipe, which pulls data from a filter and pushes data into the next filter. It must
provide read/write mechanism.
Advantages
Provides concurrency and high throughput for excessive data processing.
Provides reusability and simplifies system maintenance.
Provides modifiability and low coupling between filters.
Provides simplicity by offering clear divisions between any two filters connected
by pipe.
Provides flexibility by supporting both sequential and parallel execution.
Disadvantages
Not suitable for dynamic interactions.
A low common denominator is needed for transmission of data in ASCII formats.
Overhead of data transformation between filters.
Does not provide a way for filters to cooperatively interact to solve a problem.
Difficult to configure this architecture dynamically.
Cloud computing unit2 Rita Vadhvana
Pipe
Pipes are stateless and they carry binary or character stream which exist between two
filters. It can move a data stream from one filter to another. Pipes use a little contextual
information and retain no state information between instantiations.
Types of Subsystems
Process control architecture would have a processing unit for changing the process
control variables and a controller unit for calculating the amount of changes.
A controller unit must have the following elements −
Controlled Variable − Controlled Variable provides values for the underlying
system and should be measured by sensors. For example, speed in cruise
control system.
Input Variable − Measures an input to the process. For example, temperature of
return air in temperature control system
Manipulated Variable − Manipulated Variable value is adjusted or changed by
the controller.
Process Definition − It includes mechanisms for manipulating some process
variables.
Sensor − Obtains values of process variables pertinent to control and can be
used as a feedback reference to recalculate manipulated variables.
Set Point − It is the desired value for a controlled variable.
Control Algorithm − It is used for deciding how to manipulate process
variables.
Application Areas
Process control architecture is suitable in the following domains −
Embedded system software design, where the system is manipulated by process
control variable data.
Applications, which aim is to maintain specified properties of the outputs of the
process at given reference values.
Applicable for car-cruise control and building temperature control systems.
Cloud computing unit2 Rita Vadhvana
Application and system are implemented on top of this layer and become
portable over different hardware and software environment as long as there
is implementation of virtual machine they interface with.
Interpreter style