CS555: Distributed Systems |
[Schedule] | [Assignments] | [Infospaces] | [Grading] | [Syllabus] | [Announcements] | [Home] |
Page was lasted updated on Saturday, August 21, 2021 4:27 PM
Readings will be based on the following textbooks.
[TvS] | Distributed Systems: Principles and Paradigms. Andrew S. Tanenbaum and Maarten van Steen. 2nd Edition. Prentice Hall. ISBN: 0132392275/978-0132392273. |
[CDKB | Distributed Systems: Concepts and Design. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. 5th Edition. Addison Wesley. ISBN: 978-0132143011 |
[KS] | Distributed Computing: Principles, Algorithms, and Systems. Ajay Kshemkalyani and Mukesh Singhal. 1st edition. Cambridge University Press. ISBN: 0521876346/ 978-0521876346. |
[GPB] | Java Concurrency in Practice. Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, and Doug Lea. Addison-Wesley Professional. ISBN: 0321349601/978-0321349606. |
[NL] | Distributed Algorithms. Nancy Lynch. 1st edition. Morgan Kaufman. ISBN: 1558603484/978-1558603486. |
[MS] | MapReduce Design Patterns: Building Effective Algorithms and Analytics for Hadoop and Other Systems. 1st Edition. Donald Miner and Adam Shook. O'Reilly Media ISBN: 978-1449327170.
|
[KKWZ] | Learning Spark: Lightning-Fast Big Data Analysis. 1st Edition. Holden Karau, Andy Konwinski, Patrick Wendell, and Matei Zaharia. O'Reilly. 2015. ISBN-13: 978- 1449358624. |
[KW] | High Performance Spark: Best Practices for Scaling and Optimizing Apache Spark. Holden Karau and Rachel Warren. O'Reilly Media. 2017. ISBN-13: 978-1491943205. |
[GR] | Cloud Application Architectures: Building Applications and Infrastructure in the Cloud. George Reese.1st edition. O'Reilly. ISBN: 0596156367/978-0596156367. |
[PD] | Computer Networks: A Systems Approach. Larry Peterson and Bruce Davie. 4th edition. Morgan Kaufmann. ISBN: 978-0-12-370548-8. |
[FS] | Practical Cryptography. Niels Ferguson and Bruce Schneier. 1st edition. Wiley Publishing. ISBN: 0-471-22894-X/0-471-22357-3. |
[WS] | Cryptography and Network Security: Principles and Practice. William Stallings. 5th Edition. Prentice Hall. ISBN: 0136097049/978-0136097044 |
[RR] | Unix Systems Programming. Kay Robbins & Steve Robbins, 2nd edition. Prentice Hall. ISBN: 978-0-13-042411-2. |
[SGG] | Operating Systems Concepts. Avi Silberschatz, Peter Galvin, Greg Gagne. 8th edition. John Wiley & Sons, Inc. ISBN-13: 978-0-470-12872-5. |
The following is the tentative schedule for the course. This is subject to changes.
Week | Date | Topic | Assignments | Readings |
1 | Aug 23-27 | Introduction Time and Logical Clocks Time and Global Positioning Systems. Time synchronization algorithms: Berkley Algorithm, Cristian’s Algorithm, and synchronization in wireless settings. Lamport's Clocks, Vector and Matrix Clocks |
HW1 8/28 Term Project 8/28 |
[TvS] Chap {2, 3, 6} [KS] Chap {1, 3, 6} |
2 | Aug 30 - Sep 03 | Peer-to-Peer Systems Peer to Peer (P2P) Systems: characteristics, P2P generations, P2P middleware and requirements. Structured and Unstructured P2P Systems Time & Space complexity of P2P algorithms Systems: Pastry, Chord, Tapestry, Napster, Gnutella, and BitTorrent |
[TvS] Chap {3,6} [KS] Chap {3,6} [CDKB] Chap {14} [SGG] Ch {4, 5} [RR] Chap {12} |
|
3 | Sep 06-10 | HW2 9/10 |
[TvS] Chap {5} [CDKB] Chap {7, 10} [KS] Chap {18} [GPB] Chap {1,2,11} |
|
4 | Sep 13-17 | Term Project: Team due 9/20 |
[CDKB] Chap {10} |
|
5 | Sep 20-24 | Programming models for Data Intensive Computing: MapReduce |
[CDKB] Chap {10} [Computing Economics] [MapReduce Paper] |
|
6 | Sep 27-Oct 01 | Spark: A cluster-computing framework Core Concepts, Orchestration Plans, Narrow/Wide ependencies, Resilient Distributed Datasets (RDD), DataFrames, Datasets, Catalyst Optimizer, Operations: transformations & actions, Pair RDDs, Spark streaming |
HW3 10/03 |
[MS] Chap {1-3} [KKWZ] Chap {1-4} [KW] Chap {2} |
7 | Oct 04-08 | [KKWZ] Chap {1-4} [KW] Chap {6} |
||
8 | Oct 11-15 | Threads and Distributed Servers Development of Scalable Servers Harnessing cluster servers |
[CDKB] Chap {4} [KS] Chap {13} |
|
October 16: Course withdrawal period ends. Last day to withdraw with a W. |
||||
9 | Oct 18-22 | Term Project Proposal Presentations Project Presentations (10/17) Content Dissemination Systems (a) Queuing Systems (b) Publish/Subscribe and P2P systems (c) Epidemic protocols (d) Overlays |
||
10 | Oct 25-29 | Replication, Consistency and Coherence Performance and correctness implications of replication and consistency. (a) Data and client centric consistency, consistent ordering of operations: sequential consistency and causal consistency. Monotonic read, Monotonic write, Read-your-writes, and Writes-follow-read. (b) Consistency Protocols (c) Replica placements (d) Brewer's CAP theorem and design implications |
[TvS] Chap {7} |
|
11 | Nov 01-05 | [TvS] Chap {7} [Amazon-Consistency Paper] |
||
12 | Nov 08-12 | Distributed Storage Systems Amazon Dynamo: Assumptions & requirements, design choices, systems architecture, partitioning algorithm, replication, versioning, and experiences. Google File System: Demand pulls, file system interface, chunking, managing file system metadata, records and atomic appends, creating snapshots, replication, consistency, deletion and garbage collection. |
[Dynamo-Paper] [GFS Paper] |
|
13 | Nov 15-19 |
|||
Nov 22-26: Fall Break |
||||
14 | Nov 29-Dec 03 | RPCs and Distributed Objects Parameter Passing, Generation of Stubs, Static and Dynamic Invocations, parameter passing (big/little endian), XDR, RMI, distributed garbage collection, activatable objects, serialization and pitfalls. |
Term Project: Software due 12/04 Term Project: Report due: 12/06 Term Project: Presentations: 12/06 |
[GPB] Ch {1-4} [TvS] Ch {4} [CDKB] Ch {4-5, 18} |
15 | Dec 06-10 | Term Project Presentations Guidelines for Presentations |
||
16 | Dec 13-17 | [Finals Week] |
||
Dec 20: Final Letter Grades will be posted |
Department of Computer Science, Colorado State University, Fort Collins, CO 80523 USA © 20 21 Colorado State University |