# Distributed Systems ## Official Documentation - **Apache Hadoop Documentation** - [Link](https://hadoop.apache.org/docs/) - **Apache Kafka Documentation** - [Link](https://kafka.apache.org/documentation/) - **Kubernetes Documentation** - [Link](https://kubernetes.io/docs/home/) - **Docker Documentation** - [Link](https://docs.docker.com/) ## Research Papers - **"The Google File System" by Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung (2003)** - [Link](https://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf) - **"MapReduce: Simplified Data Processing on Large Clusters" by Jeffrey Dean and Sanjay Ghemawat (2004)** - [Link](https://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf) - **"Dynamo: Amazon's Highly Available Key-value Store" by Giuseppe DeCandia et al. (2007)** - [Link](https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf) - **"ZooKeeper: Wait-free coordination for Internet-scale systems" by Patrick Hunt et al. (2010)** - [Link](https://www.usenix.org/legacy/event/usenix10/tech/full_papers/Hunt.pdf) ## Additional Online Resources - **Distributed Systems for Fun and Profit** - [Link](http://book.mixu.net/distsys/single-page.html) - **Designing Data-Intensive Applications by Martin Kleppmann** - [Link](https://dataintensive.net/) - **MIT 6.824: Distributed Systems** - [Link](https://pdos.csail.mit.edu/6.824/) - **Awesome Distributed Systems** - [Link](https://github.com/theanalyst/awesome-distributed-systems) ## Books - **"Designing Distributed Systems" by Brendan Burns** - ISBN: 1491983647 - A practical guide to designing and implementing distributed systems using Kubernetes and other open source tools. - **"Designing Data-Intensive Applications" by Martin Kleppmann** - ISBN: 1449373321 - Explores the principles, algorithms, and trade-offs of data systems, with a focus on distributed architectures. - **"Distributed Systems: Principles and Paradigms" by Andrew S. Tanenbaum and Maarten van Steen** - ISBN: 153028175X - A comprehensive introduction to the principles and paradigms underlying distributed systems. - **"Building Microservices" by Sam Newman** - ISBN: 1492034029 - Provides practical advice on how to design and implement distributed systems using microservices architecture. ## Standards - **ISO/IEC/IEEE 60559:2020 Information technology — Microprocessor Systems — Floating-Point arithmetic** - Relevant for ensuring consistency in floating-point operations across distributed systems - **ISO/IEC 10746 Information technology — Open Distributed Processing** - Provides a framework for the standardization of open distributed processing ## Online Courses - **Coursera: Cloud Computing Specialization by University of Illinois** - [Link](https://www.coursera.org/specializations/cloud-computing) - **edX: Reliable Distributed Algorithms by KTH Royal Institute of Technology** - [Link](https://www.edx.org/course/reliable-distributed-algorithms-part-1-2) - **Udacity: Intro to Parallel Programming** - [Link](https://www.udacity.com/course/intro-to-parallel-programming--cs344)