210 likes | 225 Views
Introduction. Readings. Van Steen and Tanenbaum: 5.1 Coulouris: 10.3. Definition. From the Tanenbaum and Steen textbook: A distributed system is a piece of software that ensures that A collection of independent computers that appears to its users as a single coherent system. Definition.
E N D
Readings • Van Steen and Tanenbaum: 5.1 • Coulouris: 10.3
Definition From the Tanenbaum and Steen textbook: A distributed system is a piece of software that ensures that A collection of independent computers that appears to its users as a single coherent system.
Definition Quote by Leslie Lamport: A distributed system is one in which I cannot get something done because a machine I've never heard of is down.
Fundamental Shift Gradually went from centralized systems to networked systems The arrival of PCs and LANs led to applications that: Extracted information from central databases on shared file servers Extracted information is integrated into spreadsheets and other applications on the PC Synchronized application updates were required Tools needed to monitor and troubleshoot performance and other network problems
Emerging Characteristics • Multiple computers • Concurrent execution • Independent operation and failures • Communications • Ability to communicate • No tight synchronization • Relatively easy to expand or scale • Synchronized application updates
intranet % % ISP % % backbone satellite link desktop computer: server: network link: Example: A Typical Portion of the Internet (Coulouris)
Example: Portable and Handheld Devices in a Distributed System (Coulouris)
Evolution In the 1990’s we saw the explosion of WWW Companies began to use the web for information sharing and interactions with customers Multi-tier applications emerged Customers connect (through a browser) to many different applications Applications hosted on different servers residing on different machines
Revolution:Cloud Computing • There is an emerging trend to move more and more computing functions into large shared data centers • Amazon EC2 “hosts” data centers for customers • Google runs all sorts of office applications, email, etc on their systems • Yahoo! wants to be a one-source computing solution • IBM has a vision of computing “like electric power”
Databases, spreadsheets, office apps Email, file storage, IM, search Web services Google/IBM/Amazon/Yahoo! host the services Cloud Computing Concept
Supporting Technologies • Infrastructure • Core management and scheduling functions • Event notification services • Storage systems (GFS) • Monitoring, debugging, tuning assistance • We are increasingly seeing virtualization becoming a part of this infrastructure
Supporting Technologies • Not just about hardware • Software is needed to enable clouds: • Map-Reduce • BigTable • Astrolabe • Amazon’s shopping cart
Course Topics • We have a limited time • I would like to focus on the fundamental concepts e.g., synchronization, replication, multicast • Provide some insight into how Amazon, Google work • Look at the hot topics through a critical analysis of papers
Undergrad vs Grad • This is an advanced graduate course • Projects are not as well defined as found in undergraduate courses • You are expected to learn things outside of the lectures • More emphasis on reading research papers • More emphasis on presentations
Evaluation • Although I will present in the first part of this course I do expect 1 to 2 presentations from each student • You will be required to evaluate papers and provide brief reviews • There is one project
Reviews • Not all papers discussed in class will require a review • The goal of a review is to show that you have critically analyzed a paper • Reviews are one to two pages long
Presentations • Present a paper • Each paper will have a presenter, advocate and a devil’s advocate • Present a technology • Examples: Amazon, eBay • Can involve 2 to 3 people
Projects • Group based • Creative • Sufficiently challenging • Types: • New idea • Experiment with existing ideas • Develop an application