EEDCExecution 34330Environments for Distributed SystemsDistributedComputingMaster in Computer Architecture,Networks and Systems - CANS Homework number: 1 Group number: EEDC-1 Group members: Hugo Pérez – email@example.com Sergio Mendoza – firstname.lastname@example.org Carlos Fenoy – email@example.com
Definition You know you have a distributed systems when the crash of a computer you have never heard of stops you from getting any work done. - Lamport A collection of independent computers that appears to its users as a single coherent system. - Tanenbaum
Definition A distributed system consists of a collection of autonomous computers, connected through a network and distribution middleware, which enables computers to coordinate their activities and to share the resources of the system, so that users perceive the system as a single, integrated computing facility.
Characteristics Challenges: ● Heterogeneity ● Transparency ● Fault tolerance and failure management ● Scalability ● Concurrency ● Openness and Extensibility ● Migration and load balancing ● Security
Characteristics Transparency: ● Entire distributed system should appear as a single unit ● Complexity interactions between the components should be typically hidden from the end user. (For the user)
Characteristics Fault tolerance: ● Failure of one or more components should not bring down the entire system
Characteristics Scalability: ● System should work efficiently with increasing number of users ● Addition of a resource should improve the performance of the system. ++ --
Characteristics Concurrency: ● Shared access to resources should be made possible
Characteristics Openness & Extensibility: ● Interfaces should be cleanly separated and publicly available to enable easy extensions to existing components and add new components.
Characteristics Security: ● Access to resources should be secured ● Only known users are allowed to access
Middleware What is middleware?: ● Software layer between the operating system and the applications on each site of the system.
Middleware What Middleware offers?: ● Hiding distribution ● Hiding the heterogeneity ● Providing uniform, standard, high-level interfaces to the application developers and integrators
Middleware How it works? ● Client-side interface invoke functions that the middleware provides
Examples Search Engines ● Google has 36 data centers across the globe. With 150 racks 40 servers per data center, that would mean Google has more than 200,000 servers. This enables a sub-half-second response to an ordinary Google search query that involves 700 to 1,000 servers. CNet News, May 30 2008
Examples Online Games ● World of Warcraft ■ 20,000 computer systems ■ 13,250 server blades ■ 75,000 CPU cores ■ 1.3 petabytes of storage ■ 4,600 staffers ● Taikodom (a Brazilian gaming startup) use a combination of a z9 mainframe to handle transactions connected using a Gigabit Ethernet to a cluster of blade servers with Cell processors for graphics.
Examples Twitter (March 14, 2011) #tweets ● 3 years, 2 months and 1 day. The time it took from the first Tweet to the billionth Tweet. ● 1 week. The time it now takes for users to send a billion Tweets. ● 50 million. The average number of Tweets people sent per day, one year ago. ● 140 million. The average number of Tweets people sent per day, in the last month. ● 177 million. Tweets sent on March 11, 2011. ● 456. Tweets per second (TPS) when Michael Jackson died on June 25, 2009 (a record at that time). ● 6,939. Current TPS record, set 4 seconds after midnight in Japan on New Year’s Day.