2 điểm bởi GN⁺ 2024-10-21 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Danh sách đọc về hệ thống phân tán

Giới thiệu

  • Điều khó nhất trong hệ thống phân tán là thay đổi cách tư duy.
  • Danh sách này tập hợp các tài liệu hữu ích để thúc đẩy sự thay đổi đó.

Tài liệu gợi mở tư duy

  • Tuyển tập bài viết mang đến góc nhìn mới về thiết kế hệ thống quy mô lớn.
  • Harvest, Yield and Scalable Tolerant Systems: Ứng dụng thực tế của lý thuyết CAP.
  • On Designing and Deploying Internet Scale Services: Thiết kế và triển khai dịch vụ ở quy mô Internet.
  • The Perils of Good Abstractions: Khó khăn trong việc xây dựng API/giao diện hoàn hảo.
  • Chaotic Perspectives: Tính khó dự đoán và tính song song trong các hệ thống quy mô lớn.
  • Data on the Outside versus Data on the Inside: Hai cách tiếp cận trong quản lý dữ liệu.
  • Memories, Guesses and Apologies: Sự không chắc chắn trong xử lý dữ liệu.
  • SOA and Newton's Universe: Cách tiếp cận mang tính triết học đối với kiến trúc hướng dịch vụ.
  • Building on Quicksand: Xây dựng hệ thống trên nền tảng không ổn định.
  • Why Distributed Computing?: Vì sao cần điện toán phân tán.
  • A Note on Distributed Computing: Các khái niệm cơ bản của điện toán phân tán.
  • Stevey's Google Platforms Rant: Kinh nghiệm về nền tảng SOA của Google.

Độ trễ

  • Sự tồn tại của độ trễ và cách ứng phó với nó.
  • Latency Exists, Cope!: Tác động kiến trúc của độ trễ.
  • Latency - the new web performance bottleneck: Nút thắt cổ chai mới của hiệu năng web.
  • The Tail At Scale: Vấn đề độ trễ trong các hệ thống quy mô lớn.

Amazon

  • Nội dung thú vị về văn hóa và tổ chức của Amazon hơn là về công nghệ.
  • A Conversation with Werner Vogels: Chuyển đổi sang kiến trúc dựa trên dịch vụ.
  • Discipline and Focus: Thông tin bổ sung về quá trình chuyển đổi kiến trúc của Amazon.
  • Vogels on Scalability: Góc nhìn của Vogels về khả năng mở rộng.

Google

  • Công nghệ mới nhất của hệ thống phân tán.
  • MapReduce: Mô hình xử lý dữ liệu quy mô lớn.
  • Chubby Lock Manager: Quản lý khóa phân tán.
  • Google File System: Hệ thống tệp quy mô lớn.
  • BigTable: Hệ thống lưu trữ phân tán.
  • Data Management for Internet-Scale Single-Sign-On: Quản lý dữ liệu cho single sign-on ở quy mô Internet.
  • Dremel: Phân tích tương tác trên các bộ dữ liệu ở quy mô web.
  • Large-scale Incremental Processing Using Distributed Transactions and Notifications: Xử lý tăng dần quy mô lớn bằng giao dịch phân tán.
  • Megastore: Lưu trữ có khả năng mở rộng và tính sẵn sàng cao cho các dịch vụ tương tác.
  • Spanner: Cơ sở dữ liệu phân tán toàn cầu.
  • Photon: Kết hợp các luồng dữ liệu liên tục.
  • Mesa: Hệ thống kho dữ liệu thời gian thực.

Mô hình nhất quán

  • Tìm sự cân bằng giữa tính nhất quán và tính sẵn sàng trong thiết kế hệ thống.
  • CAP Conjecture: Sự đánh đổi giữa tính nhất quán, tính sẵn sàng và khả năng chịu phân vùng.
  • Consistency, Availability, and Convergence: Giới hạn trên của tính nhất quán.
  • CAP Twelve Years Later: Sự thay đổi của lý thuyết CAP.
  • Consistency and Availability: Mối quan hệ giữa tính nhất quán và tính sẵn sàng.
  • Eventual Consistency: Tính nhất quán cuối cùng.
  • Avoiding Two-Phase Commit: Cách tránh two-phase commit.
  • 2PC or not 2PC, Wherefore Art Thou XA?: Giới hạn của two-phase commit.
  • Life Beyond Distributed Transactions: Quản lý dữ liệu vượt ra ngoài giao dịch phân tán.
  • If you have too much data, then 'good enough' is good enough: Tương lai của NoSQL và lý thuyết dữ liệu.
  • Starbucks doesn't do two phase commit: Cơ chế bất đồng bộ.
  • You Can't Sacrifice Partition Tolerance: Tầm quan trọng của khả năng chịu phân vùng.
  • Optimistic Replication: Cách tiếp cận nhất quán lỏng.

Lý thuyết

  • Các bài báo giải thích những yếu tố quan trọng trong thiết kế hệ thống phân tán.
  • Distributed Computing Economics: Tính kinh tế của điện toán phân tán.
  • Rules of Thumb in Data Engineering: Các quy tắc kinh nghiệm trong kỹ thuật dữ liệu.
  • Fallacies of Distributed Computing: Những ngộ nhận trong điện toán phân tán.
  • Impossibility of distributed consensus with one faulty process: Lý thuyết FLP.
  • Unreliable Failure Detectors for Reliable Distributed Systems: Bộ phát hiện lỗi cho các hệ thống phân tán đáng tin cậy.
  • Lamport Clocks: Đồng hồ Lamport trong hệ thống phân tán.
  • The Byzantine Generals Problem: Bài toán các vị tướng Byzantine.
  • Lazy Replication: Tận dụng ngữ nghĩa của dịch vụ phân tán.
  • Scalable Agreement: Sắp thứ tự như một dịch vụ.
  • Scalable Eventually Consistent Counters over Unreliable Networks: Bộ đếm mở rộng với tính nhất quán cuối cùng trên các mạng không đáng tin cậy.

Ngôn ngữ và công cụ

  • Các vấn đề khi xây dựng hệ thống phân tán bằng công nghệ cụ thể.
  • Programming Distributed Erlang Applications: Xây dựng ứng dụng phân tán bằng Erlang và OTP.

Hạ tầng

  • Các nguyên tắc quản lý thời gian mạnh mẽ trên Internet.

Lưu trữ

  • Consistent Hashing and Random Trees: Hashing nhất quán và cây ngẫu nhiên.
  • Amazon's Dynamo Storage Service: Dịch vụ lưu trữ của Amazon.
  • Paxos Consensus: Hiểu về thuật toán Paxos.
  • The Part-Time Parliament: Nền tảng của Paxos.
  • Paxos Made Simple: Giải thích đơn giản về Paxos.
  • Paxos Made Live: Góc nhìn kỹ thuật về Paxos.
  • Revisiting the Paxos Algorithm: Xem xét lại thuật toán Paxos.
  • How to build a highly available system with consensus: Xây dựng hệ thống có tính sẵn sàng cao bằng cơ chế đồng thuận.
  • Reconfiguring a State Machine: Tái cấu hình state machine.
  • Implementing Fault-Tolerant Services Using the State Machine Approach: Triển khai dịch vụ chịu lỗi bằng cách tiếp cận state machine.

Các bài báo khác về đồng thuận

  • Mencius: Xây dựng state machine replication hiệu quả cho WAN.
  • In Search of an Understandable Consensus Algorithm: Phiên bản mở rộng của thuật toán RAFT.

Giao thức gossip (Epidemic Behaviours)

  • Sức mạnh của các giao thức truyền thông dựa trên gossip.
  • Astrolabe: Kỹ thuật giám sát hệ thống phân tán và khai phá dữ liệu.
  • Epidemic Computing at Cornell: Điện toán dịch tễ tại Đại học Cornell.
  • Fighting Fire With Fire: Vượt qua giới hạn mở rộng bằng gossip ngẫu nhiên.
  • Bi-Modal Multicast: Multicast hai chế độ.
  • ACM SIGOPS Operating Systems Review: Mạng dựa trên gossip.
  • SWIM: Giao thức membership nhóm tiến trình kiểu lây nhiễm với tính nhất quán yếu và khả năng mở rộng.

P2P

  • Chord: Giao thức tra cứu peer-to-peer có khả năng mở rộng cho các ứng dụng Internet.
  • Kademlia: Hệ thống thông tin peer-to-peer dựa trên metric XOR.
  • Pastry: Định vị và định tuyến đối tượng phân tán cho các hệ thống peer-to-peer quy mô lớn.
  • PAST: Tiện ích lưu trữ peer-to-peer bền vững quy mô lớn được xây dựng trên Pastry.
  • SCRIBE: Hạ tầng multicast cấp ứng dụng phân tán quy mô lớn được xây dựng trên Pastry.

Tóm tắt của GN⁺

  • Hệ thống phân tán là lĩnh vực đòi hỏi phải thay đổi cách tư duy để giải quyết các vấn đề phức tạp.
  • Thông qua nhiều tài liệu và bài báo khác nhau, danh sách này mang lại sự hiểu biết sâu sắc về thiết kế và triển khai hệ thống phân tán.
  • Danh sách này bao quát nhiều khía cạnh của hệ thống phân tán, đặc biệt cung cấp góc nhìn về mô hình nhất quán và vấn đề độ trễ.
  • Đây có thể là tài liệu hữu ích cho các nhà phát triển hoặc nhà nghiên cứu quan tâm đến hệ thống phân tán.
  • Các dự án có chức năng tương tự được khuyến nghị gồm Apache Kafka, Apache Cassandra, v.v.

Chưa có bình luận nào.

Chưa có bình luận nào.