2 points par GN⁺ 2024-10-21 | Aucun commentaire pour le moment. | Partager sur WhatsApp

Liste de lectures sur les systèmes distribués

Introduction

  • La chose la plus difficile dans les systèmes distribués est de changer sa manière de penser.
  • Cette liste rassemble des ressources utiles pour favoriser ce changement.

Ressources qui stimulent la réflexion

  • Une sélection de textes offrant de nouvelles perspectives sur la conception de systèmes à grande échelle.
  • Harvest, Yield and Scalable Tolerant Systems : application concrète du théorème CAP.
  • On Designing and Deploying Internet Scale Services : conception et déploiement de services à l’échelle d’Internet.
  • The Perils of Good Abstractions : la difficulté de construire une API/interface parfaite.
  • Chaotic Perspectives : imprévisibilité et parallélisme dans les systèmes à grande échelle.
  • Data on the Outside versus Data on the Inside : deux approches de la gestion des données.
  • Memories, Guesses and Apologies : l’incertitude dans le traitement des données.
  • SOA and Newton's Universe : une approche philosophique de l’architecture orientée services.
  • Building on Quicksand : construire un système sur des fondations instables.
  • Why Distributed Computing? : pourquoi l’informatique distribuée est nécessaire.
  • A Note on Distributed Computing : concepts de base de l’informatique distribuée.
  • Stevey's Google Platforms Rant : retour d’expérience sur la plateforme SOA de Google.

Latence

  • L’existence de la latence et les moyens d’y faire face.
  • Latency Exists, Cope! : l’impact architectural de la latence.
  • Latency - the new web performance bottleneck : le nouveau goulot d’étranglement des performances web.
  • The Tail At Scale : les problèmes de latence dans les systèmes à grande échelle.

Amazon

  • Des éléments intéressants sur la culture et l’organisation d’Amazon plus que sur la technologie.
  • A Conversation with Werner Vogels : la transition vers une architecture orientée services.
  • Discipline and Focus : compléments sur la transformation architecturale d’Amazon.
  • Vogels on Scalability : le point de vue de Vogels sur la scalabilité.

Google

  • Les technologies de pointe des systèmes distribués.
  • MapReduce : modèle de traitement de données à grande échelle.
  • Chubby Lock Manager : gestion distribuée des verrous.
  • Google File System : système de fichiers à grande échelle.
  • BigTable : système de stockage distribué.
  • Data Management for Internet-Scale Single-Sign-On : gestion des données pour le single sign-on à l’échelle d’Internet.
  • Dremel : analyse interactive de jeux de données à l’échelle du web.
  • Large-scale Incremental Processing Using Distributed Transactions and Notifications : traitement incrémental à grande échelle via des transactions distribuées.
  • Megastore : stockage scalable et hautement disponible pour les services interactifs.
  • Spanner : base de données distribuée mondiale.
  • Photon : jointure de flux continus de données.
  • Mesa : système de data warehousing en temps réel.

Modèles de cohérence

  • Trouver l’équilibre entre cohérence et disponibilité dans la conception des systèmes.
  • CAP Conjecture : arbitrage entre cohérence, disponibilité et tolérance au partitionnement.
  • Consistency, Availability, and Convergence : les limites supérieures de la cohérence.
  • CAP Twelve Years Later : l’évolution de la théorie CAP.
  • Consistency and Availability : relation entre cohérence et disponibilité.
  • Eventual Consistency : cohérence éventuelle.
  • Avoiding Two-Phase Commit : comment éviter le commit en deux phases.
  • 2PC or not 2PC, Wherefore Art Thou XA? : les limites du commit en deux phases.
  • Life Beyond Distributed Transactions : la gestion des données au-delà des transactions distribuées.
  • If you have too much data, then 'good enough' is good enough : NoSQL et l’avenir de la théorie des données.
  • Starbucks doesn't do two phase commit : mécanismes asynchrones.
  • You Can't Sacrifice Partition Tolerance : l’importance de la tolérance au partitionnement.
  • Optimistic Replication : approche de cohérence relâchée.

Théorie

  • Des articles expliquant des éléments importants de la conception des systèmes distribués.
  • Distributed Computing Economics : l’économie de l’informatique distribuée.
  • Rules of Thumb in Data Engineering : règles empiriques en ingénierie des données.
  • Fallacies of Distributed Computing : les idées reçues de l’informatique distribuée.
  • Impossibility of distributed consensus with one faulty process : théorie FLP.
  • Unreliable Failure Detectors for Reliable Distributed Systems : détecteurs de pannes pour systèmes distribués fiables.
  • Lamport Clocks : synchronisation du temps dans les systèmes distribués.
  • The Byzantine Generals Problem : le problème des généraux byzantins.
  • Lazy Replication : exploitation de la sémantique dans les services distribués.
  • Scalable Agreement : l’ordonnancement en tant que service.
  • Scalable Eventually Consistent Counters over Unreliable Networks : compteurs scalables à cohérence éventuelle sur des réseaux peu fiables.

Langages et outils

  • Les défis de la construction de systèmes distribués avec des technologies spécifiques.
  • Programming Distributed Erlang Applications : créer des applications distribuées avec Erlang et OTP.

Infrastructure

  • Principes robustes de gestion du temps sur Internet.

Stockage

  • Consistent Hashing and Random Trees : hachage cohérent et arbres aléatoires.
  • Amazon's Dynamo Storage Service : le service de stockage d’Amazon.
  • Paxos Consensus : comprendre l’algorithme Paxos.
  • The Part-Time Parliament : les bases de Paxos.
  • Paxos Made Simple : une explication simple de Paxos.
  • Paxos Made Live : une perspective d’ingénierie sur Paxos.
  • Revisiting the Paxos Algorithm : réexamen de l’algorithme Paxos.
  • How to build a highly available system with consensus : construire un système hautement disponible grâce au consensus.
  • Reconfiguring a State Machine : reconfiguration d’une machine à états.
  • Implementing Fault-Tolerant Services Using the State Machine Approach : mise en œuvre de services tolérants aux pannes avec l’approche machine à états.

Autres articles sur le consensus

  • Mencius : construire des machines à états répliquées efficaces pour le WAN.
  • In Search of an Understandable Consensus Algorithm : version étendue de l’algorithme RAFT.

Protocoles de gossip (Epidemic Behaviours)

  • La puissance des protocoles de communication fondés sur le gossip.
  • Astrolabe : techniques de supervision et de data mining pour systèmes distribués.
  • Epidemic Computing at Cornell : l’informatique épidémique à Cornell.
  • Fighting Fire With Fire : dépasser les limites de scalabilité avec un gossip aléatoire.
  • Bi-Modal Multicast : multicast bimodal.
  • ACM SIGOPS Operating Systems Review : réseaux fondés sur le gossip.
  • SWIM : protocole de membership de groupe de processus, scalable, faiblement cohérent et de style épidémique.

P2P

  • Chord : protocole scalable de recherche pair à pair pour les applications Internet.
  • Kademlia : système d’information pair à pair fondé sur la métrique XOR.
  • Pastry : localisation d’objets distribués et routage pour de grands systèmes pair à pair.
  • PAST : utilitaire de stockage pair à pair persistant à grande échelle construit sur Pastry.
  • SCRIBE : infrastructure multicast distribuée à grande échelle au niveau applicatif construite sur Pastry.

Résumé GN⁺

  • Les systèmes distribués sont un domaine qui exige de transformer sa manière de penser pour résoudre des problèmes complexes.
  • Cette sélection de ressources et d’articles apporte une compréhension approfondie de la conception et de l’implémentation des systèmes distribués.
  • Cette liste couvre de nombreux aspects des systèmes distribués, avec un éclairage particulier sur les modèles de cohérence et les problèmes de latence.
  • Elle peut constituer une ressource utile pour les développeurs ou chercheurs intéressés par les systèmes distribués.
  • Parmi les projets aux fonctionnalités proches, Apache Kafka et Apache Cassandra sont également recommandés.

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.