現代のレコメンドモデルは、ますます長く属性の豊富なユーザー履歴を消費するように進化してきました。この変化は、重大なストレージの非対称性を生み出しています。システムは、継続的な小規模更新(ストリーミングワークロード)を処理すると同時に、履歴データの繰り返される大規模な読み取り(バッチワークロード)をサポートしなければなりません。これに対処するため、ByteDanceはUSDBを開発しました。これは、取り込み、推論、およびトレーニングの間にメンテナンス結果を再利用することで、これら2つの相反する要求の間のギャップを埋めるように設計された統合シーケンスストレージの実装です。
USDBはいくつかのアーキテクチャ上の革新を通じてこれを実現しています。このシステムは、アプリケーション固有の履歴を具現化するために、時間ベースの「CascadeLSM」コンパクション戦略を採用しています。永続ファイルを共有する差別化されたレプリカを使用することで、システムはデータが異なるワークロード間で冗長に保存されることを防ぎます。さらに、USDBはハイブリッド列形式を利用して投影読み取りを加速させ、キャプチャされた最近の状態とバージョン管理された履歴の組み合わせから推論入力を再構築することを可能にします。これらの設計により、システムはシーケンスの単一の真実のソースを維持しながら、異なるタスクの特定のアクセスパターンに合わせて最適化することができます。
本番環境への移行データは、USDBが効率を大幅に向上させることを示しており、以前のプロダクション構成と比較して平均書き込みレイテンシが85.8%減少し、インフラコストが42.1%削減されたことが記録されています。制御された比較では、USDBは最適化されたRocksDBシーケンスベースラインを上回り、さまざまなクライアント負荷と投影において、より高速な長い履歴の読み取りを実証しました。さらに、システムの集約プッシュダウン機能は、制約のある受信予算の下で、通常の読み取りの8.5倍のスループットを維持します。レコメンドワークロードの特定の非対称性に対して高度に最適化されていますが、システムのパフォーマンスは汎用的なデータベース操作よりも、これらの特定のユースケースに合わせて調整されています。
