CLOUD COMPUTING Partners Manisha Drashti Aakash Udhani Gajjar

  • Slides: 27
Download presentation
CLOUD COMPUTING → Partners Manisha Drashti Aakash Udhani Gajjar Gangwani

CLOUD COMPUTING → Partners Manisha Drashti Aakash Udhani Gajjar Gangwani

COMPUTING HISTORY 1. Abacus been invented in Babylon

COMPUTING HISTORY 1. Abacus been invented in Babylon

 2. Charles Babbage computer 1834 - Charles Babbage General purpose computing device

2. Charles Babbage computer 1834 - Charles Babbage General purpose computing device

3. Z 1 computer created by German engineer konrad Zuse, 1939 22 -bit floating

3. Z 1 computer created by German engineer konrad Zuse, 1939 22 -bit floating point Clock Frequency 5 -10 Hz And many more like Z 2, Z 3… with different specifications.

4. Bell 1961 5. ENIAC Electronic Numerical Integrator and Computer 1945 Size: 30’ x

4. Bell 1961 5. ENIAC Electronic Numerical Integrator and Computer 1945 Size: 30’ x 50’ room 18, 000 vacuum tubes 1500 relays weighed 30 tons

6. CDC 6600 q CONTROL DATA CORPORATION q designed by Seymour Cray In 1960

6. CDC 6600 q CONTROL DATA CORPORATION q designed by Seymour Cray In 1960 q released in 1964 q considered as world’s first super computer q It was the world’s fastest computers from 1964 -1969 q 169000 transistors

 System-360 1964, First integral DOS, OS/360 Intel 8088 released in 1981 5 MHz

System-360 1964, First integral DOS, OS/360 Intel 8088 released in 1981 5 MHz clock frequency 16 bit integers, with an 8 -bit data bus transfers took two steps (a byte at a time) 1 Mb of physical memory address limitation 8 -bit device-controlling chips 29, 000 transistors 3 -micron technology speed was 0. 33 MIPS

PERFORMANCE PROGRESS 2010: 2. 57 petaflops 15, 100 2005: 280. 6 teraflops 1, 650

PERFORMANCE PROGRESS 2010: 2. 57 petaflops 15, 100 2005: 280. 6 teraflops 1, 650 2000: 4. 94 teraflops 1995: 170 gigaflop The Petaflops (10)15 – computing speed Teraflop – computing speed(10)12 Gigaflop – One billion operations per second times faster baseline

 • Computing: The use or operation of computers OR to mean any goal

• Computing: The use or operation of computers OR to mean any goal oriented activity requiring, benefiting from. The two main fundamental models of computing are : 1. Sequential 2. Parallel Computing.

 PARALLEL Computing : It is a type of computation in which any calculations

PARALLEL Computing : It is a type of computation in which any calculations or the execution of processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time.

 SEQUENTIAL Computing : It is a type of computation in which any calculations

SEQUENTIAL Computing : It is a type of computation in which any calculations or the execution of processes are carried out one at a time. Large problems are broken down into small pieces and are kept in a sequence, which can then be solved one at a time.

 Distributed System: It is used when there are multiple users, different physical architecture,

Distributed System: It is used when there are multiple users, different physical architecture, different location of each with different place of Hardware's, but which are shared/integrated or a common place. agents Also said as breaking down an application into individual company

 Architectural styles of Distributed Computing major classes 1. Components and Connectors 2. Software

Architectural styles of Distributed Computing major classes 1. Components and Connectors 2. Software Architectural Styles 3. System Architectural Styles A. Client Server Thin Client Model Fat Client Model Two Tier Architecture Three Tier/ N-tier Architecture B. Peer to Peer

 Server: Server is a computer program or a device that provides functionality for

Server: Server is a computer program or a device that provides functionality for other programs or devices, called "clients". A server is a device with a set of programs providing services requested by clients.

 This model is suitable in many-to-one scenarios, where the information and the services

This model is suitable in many-to-one scenarios, where the information and the services of interest can be centralized and accessed through a single access point: the server Multiple clients are interested in such services and the server must be appropriately designed to server requests coming from different clients efficiently.

TYPES OF SERVER

TYPES OF SERVER

CLIENT SERVER ARCHITECTURE Client Server : This architecture is very popular in distributed computing

CLIENT SERVER ARCHITECTURE Client Server : This architecture is very popular in distributed computing and it is suitable for a wide variety of applications. Two major components are A Server and A Client These two components interact with each other through a network connection by using a given protocol.

CLIENT SERVER ARCHITECTURE • Communication is Unidirectional: the client issues a request to the

CLIENT SERVER ARCHITECTURE • Communication is Unidirectional: the client issues a request to the server, and server after processing the request returns a response. • The client-serer paradigm are request, accept(client side) and listen and response(sever side)

Two major Models 1. Thin Client Model: The load of data processing and transformation

Two major Models 1. Thin Client Model: The load of data processing and transformation is put on the server side, and the client has a light implementation that is mostly concerned with retrieving and returning the data it is being asked for, with no considerable further processing.

2. Fat Client Model: The client, component is also responsible for processing and transformation

2. Fat Client Model: The client, component is also responsible for processing and transformation the data before returning it back to the user, while the server features a relatively light implementation mostly concerned with the management of access to the data.

 Three major components of Client server model : Presentation Application Data This Logic

Three major components of Client server model : Presentation Application Data This Logic Storage all can be seen as Conceptual Layers which are more appropriately called TIERS

TWO MAJOR TIERS v Two Tier Architecture: This architecture partitions the systems into two

TWO MAJOR TIERS v Two Tier Architecture: This architecture partitions the systems into two tiers, which are located in one in the client component and the other on the server. This architecture is suitable for systems of limited size and suffers from scalability issues. As the number of user increases, the performance of the server might dramatically decrease.

Three/n Tier Architecture: • The architecture is generalized into a N-tier model, in case

Three/n Tier Architecture: • The architecture is generalized into a N-tier model, in case its necessary to further divide the stages composing the application logic and storage tiers. • This model is generally more scalable that the previous one because it is possible to distribute the tiers into several computing nodes, thus isolating the performance bottlenecks. • They are also more complex to understand manage.

PEER –TO – PEER This model introduces a symmetric architecture where all the components,

PEER –TO – PEER This model introduces a symmetric architecture where all the components, called Peers, play the same role and incorporate both the client and server capabilities of the previous model. Each peer acts as a server when it processes request from other peers and as a client when it issues request to other peers. With respect the client-server model which partitions the responsibilities of the inter process communication between server and client, the peerto-peer model attributes the same responsibilities to each component.

 CONTD. . This model is suitable for highly decentralized architecture, which can scale

CONTD. . This model is suitable for highly decentralized architecture, which can scale better along the dimension of the number of peers. The system architectural styles presented in this section constitute a reference model that are further enhanced or diversified according to the specific needs of the application to be designed and implemented.