Stockage en plusieurs étages P... Note

Stockage en plusieurs étages Pinterest pour Apache Kafka : une approche déconnectée du courtier

Apache Kafka est devenu une solution PubSub omniprésente, gérant des pétaoctets de données à Pinterest. Pour répondre aux besoins de stockage croissants, le stockage en plusieurs étages (Tiered Storage) a émergé comme un modèle de conception qui déplace les données des disques de broker coûteux vers des systèmes de stockage à distance plus abordables.Le stockage en plusieurs étages natif dans Kafka 3.6.0+ lie étroitement la fonctionnalité au processus de broker, limitant la flexibilité.L'implémentation de stockage en plusieurs étages déconnecté de Pinterest sépare le stockage du calcul, offrant des avantages tels que la réduction des coûts, l'optimisation des ressources et une adoption plus facile.L'approche déconnectée emploie un chargeur de segment qui charge les segments de journal finalisés dans le stockage à distance, un consommateur de stockage en plusieurs étages pour la consommation de données, et un système de stockage à distance avec des coûts de stockage par unité plus faibles.Le chargeur de segment surveille les systèmes de fichiers des brokers pour détecter les segments finalisés, détecte les changements de leadership via ZooKeeper (ou KRaft dans les versions plus récentes de Kafka), et gère la tolérance aux pannes pour assurer la continuité des données.Le consommateur de stockage en plusieurs étages lit les données à la fois sur le disque local du broker et dans le stockage à distance, réduisant le coût de service.Cette implémentation déconnectée a déplacé environ 200 TB de données quotidiennes des disques de broker vers le stockage d'objets plus abordable depuis mai 2024.Elle offre une flexibilité dans l'adoption du stockage en plusieurs étages et les mises à jour de fonctionnalités, sans affecter les performances du broker.L'implémentation open-source de la solution de stockage en plusieurs étages déconnecté de Pinterest pour Apache Kafka est maintenant disponible.