HeadlinesBriefing HeadlinesBriefing.com

正確性を損なわずに統合パイプラインをスケーリング

Towards Data Science •
×

企業データ統合パイプラインは重要な課題に直面しています:データの正確性を損なわずにスループットをスケーリングすること。この記録は、500から8,000イベント/秒までのスケーリングを詳述し、2つの不可譲の保証を維持しています。

最初の保証は、後のエンティティ状態が以前のバージョンによって上書きされるのを防ぎます。各エンティティはソース所有のバージョン番号を持ち、書き込みは最後の書き込み勝利メカニズムを通じて古いデータを拒否し、ここで「最後」は最も高いバージョン番号を意味し、到着時間ではありません。これにより、順序の問題なしに積極的な並列処理が可能になります。

2番目の保証は、正確な重複検出を保証します。受け入れられた各レコードは、重複排除ログエントリとビジネスデータを同じデータベーストランザクションで書き込み、一緒にコミットされるか、全くコミットされません。アプリケーションレベルのチェックからデータベースの主キー制約への移行により、高い並行性時の重複のスリップが排除されました。

スループットのスケーリングは戦略的なパーティショニングを使用します。同じエンティティのイベントはエンティティIDのハッシュによって同じパーティションにルーティングされ、自然な順序を維持します。しかしながら、1つの大きなアカウントが通常のトラフィックの100倍を生成した場合、サブパーティショニングはエンティティIDとイベントタイプをキーとして使用して、熱のエンティティをパーティションに分散させました。バックグラウンドジョブはエンティティのレートを継続的に監視し、通常のパーティショニングと細粒度のパーティショニングの間でエンティティを昇格および降格させます。バージョンチェックシステムは、サブパーティショニングによって導入される任意の順序外処理を吸収します。

マイクロバッチ処理は、各イベントのネットワーク往復を排除し、個別のデータベーストランザクションのオーバーヘッドを減らすことにより、実際の速度向上を提供します。

主要エンティティ:企業:データサイエンスへ

出典: Towards Data Science · 要約:HeadlinesBriefing