Scalable Distributed Systems: Leandro Navarro + Invited Speakers Spring 2012
Scalable Distributed Systems: Leandro Navarro + Invited Speakers Spring 2012
Game-theoretic, economic, evolutionary, control, complex networks Multi-tier, cluster, grid, cloud, SaaS Caching, distribution, replication
Middleware and Applications: Coordination, computing, storage, web, content distribution, Internet-scale systems or services
Scalable Distributed Systems
4
Activities
Materials: Papers publicly available Theory classes
Reading and discussion of research papers Presentation of topics by students
Laboratory activities Evaluation: based on the participation of students in class, readings and an experimental project work on specific topics
Lab activities
Construction of key elements of a scalable distributed system and evaluation of the system Design small elements (or build on) inspired by existing systems for an app (e.g. design or use Hadoop, Zookeper, Hbase, HFS, memcached, CDN, etc) Evaluation, benchmarking of your system/app in real conditions (e.g. PlanetLab, OpenStack, Amazon VM)
Scalable Distributed Systems
6
Course organization
Sequential order: Decentralized Systems (period 1) Scalable Distributed Systems (period 2) 6 ECTS, 7.5 weeks (20-80%)
MO 7 14 23 28
TU 1 8 15 23
FEBRUARY WE TH FR 2 3 4 9 10 11 16 17 18 24 24 25
SA 5 12 19 26
SU 6 13 20 27
MO 7 14 21 28
TU 1 8 15 22 29
WE 2 9 16 23 30
MARCH TH 3 10 17 24 31
FR 4 11 18 25
SA 5 12 19 26
SU 6 13 20 27
MO 4 11 18 25 MO 2 9 16 23 30
TU 5 12 19 26 TU 3 10 17 24 31
WE
Decentralized Systems
ABRIL TH FR 1 6 7 8 13 14 15 20 21 22 27 28 29 MAY TH 5 12 19 26 FR 6 13 20 27
SA 2 9 16 23 30 SA 7 14 21 28
SU 3 10 17 24
WE 4 11 18 25
SU 1 8 15 22 29
Syllabus
10/4 12/4 17/4 19/4 24/4 26/4 03/5 08/5 10/5 15/5 17/5 22/5 24/5 29/5 31/5 Tue Thu Tue Thu Tue Thu Thu Tue Thu Tue Thu Tue Thu Tue Tue
Course introduction and overview Visions and concepts Virtualization Virtualized platforms Models: economic, game, control Resource management Autonomic computing Fault tolerance Current platforms Computing Structured Storage Coordination and consensus Data management Experience with Applications Experience with Applications
10
Topics
Visions and concepts Virtualization; virtualized platforms Models: economic, game, control Resource management Autonomic computing Fault tolerance Current platforms Computing Structured Storage Coordination and consensus Data management Experience with Applications
11
References, materials
Look at the course wiki http://wiki.fib.upc.edu/sds (you can log in and edit: contribute links)
12
Overview
Distributed Computing ... What is The Grid What is The Cloud What is scalability Reading: (wiki)
13
Distributed computing
Look at the wikipedia definition Related ideas:
The Advanced Networked Systems Architecture (ANSA), U. Cambridge +, 80s-90s distributed systems technology to support applications integration in enterprise-wide systems. e.g. NASA's Astrophysics Data System Standardisation activities: TINA-C, RM-ODP, OSF DCE, OMG CORBA
14
15
Other specs
Early 2000s Model-Driven architecture (MDA), CORBA ... by the Object Management Group (OMG) Grid computing (making computer power as easy to access as an electric power grid) over the Internet, scientific purposes
16
18
Service Definition
A service is a mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description
OASIS SOA Reference Model
19
Scaling techniques
Scale:
distance: latency, org: complexity, volume of demand: load, dynamics: failures, churn, load
Replication: alternative copies selection, consistency? Caching: reuse effort transfer (locality, hidden) Distribution: divide computation (e.g. routing, name resolution, computation)
Scalable Distributed Systems
22
Next Day
Visions and concepts (Introductory) Grid: Ian Foster, "What is the Grid? A Three Point Checklist", GRIDToday, July 20, 2002 Ian Foster blog, "There's Grid in them thar Clouds", Jan 08, 2008. Cloud: Brian Hayes. Cloud computing. Comm. ACM 51, 7 (July 2008), pp. 9-11 Michael Armbrust et al. A view of cloud computing Comm. ACM 53, 4 (April 2010), pp. 50-58
Scalable Distributed Systems
23
More ...
Christof Weinhardt, Arun Anandasivam, Benjamin Blau, and Jochen Ster, Business Models in the Service World, IT Professional, 2009 Jonathan Spring, Monitoring Cloud Computing by Layer, IT Professional, 2011 Paul Hoffman, Dan Woods, Cloud Computing: The Limits of Public Clouds for Business Applications, Internet Computing, 2010
Scalable Distributed Systems
24
More ...
Eric Brewer, Lessons from giant-scale services, IEEE Internet Computing Several authors, The CAP theorem, IEEE Computer Magazine, February 2012
25
27