RSS Etsy Engineering | 技術としての芸術

Etsy Paymentsのスケーリング:Vitessを使用したPart 1 – データモデル

2020年、Etsyの支払いデータベースはスケーラビリティの問題に直面し、Vitessが管理するシャード環境への移行が必要となった。 このプロジェクトでは、4つのデータベースから40億行を1つのシャード環境に移行し、Vitessのvindexesをシャードのために使用する必要があった。 第1フェーズでは、理想的なデータモデルを持つseller ledger infrastructureを移行することに焦点を当てた。 第2フェーズでは、複雑なデータモデルを持つプライマリ・ペイメント・データベースの負荷を削減することに焦点を当てた。このデータベースのモデルは、よりターゲット化されたアプローチが必要であった。 第2フェーズのために、2つのオプションが検討された:コア・データ・モデルのリモデリング、または既存のモデル内でのシャーダー・ファインダー(shardifier)の探索。 時間的な制約と信頼性の維持の重要性のため、後者のオプションが選択された。 チームは、既存のプライマリ・キーとフォーリン・キーをシャーダー・ファインダーとして使用し、第1フェーズよりも少ない作業量で済むようにした。 Vitessのリシャーディング機能は、将来的にシャード・デザインを調整するための柔軟性を提供する。 Vitessのセカンダリ・インデックスは、非理想的なデータ・モデルの制限を緩和し、クエリーでシャーダー・ファインダーを使用せずにシャードをターゲットすることを可能にする。 この移行によって、スケーラビリティが60%向上し、将来的に成長するための余裕が生じた。
favicon
etsy.com
Scaling Etsy Payments with Vitess: Part 1 – The Data Model