Pinecone が Spanner の使い慣れた PostgreSQL を活用してベクトル データベースを強化している方法
Google Cloud Japan Team
※この投稿は米国時間 2023 年 12 月 12 日に、Google Cloud blog に投稿されたものの抄訳です。
Pinecone では、ベクトル検索のためのスケーラブルで使いやすいフルマネージド プラットフォームを提供する、主要なベクトル データベースの一つを提供しています。Fortune 500 企業や新興企業を含む幅広いお客様によって使用されている当社のベクトル データベースは、さまざまなアプリケーションの強化に役立ちます。そして最近、Pinecone の基礎となるデータベース エンジンを Spanner に移行しました。今回は、その際に学んだ経験についてお話しします。
Spanner を選んだ理由
当社の無料枠サービスには、常に数万人のアクティブ ユーザーがおり、ユーザー エクスペリエンスを犠牲にすることなく、ストレージの費用を削減するスケーラビリティの高いマルチテナント アーキテクチャを利用しています。各インデックスのデータ プレーン メタデータは、インデックスの一貫したビューを保持するポインターとマニフェストで構成されています。クリティカル読み取りパスはメタデータにアクセスするため、低レイテンシのポイント読み取りを提供する可用性の高いデータベースにメタデータを保存する必要がありました。そして、言ってしまえば、Spanner のリードレプリカとその 1 桁ミリ秒の読み取りレイテンシにより、検索クエリのクリティカル パスで予測可能な低レイテンシを確保できると考えたのです。
また、あらゆる次元に拡張できるトランザクション セマンティクスを備えた SQL データベースも探していました。これは、現在のマルチテナント ワークロードだけでなく、急速に変化する AI 分野における将来の未知なるプロダクトをサポートするためにも必要なものです。加えて、シャーディング、スケーリング、フェイルオーバーを管理するという運用上の負担を伴うことなく、非常に高い耐久性と効率的な読み取り / 書き込みパフォーマンスを備えている必要もありました。私たちは、今後 1 年間で Pinecone の無料利用枠を 3 桁拡大する必要があると考えていました。そのため、選択するデータベースに求められるのは、それに対応できる能力、そして高い費用対効果です。
Spanner はこれらすべての条件を満たすものでした。費用対効果が高く、大幅なスケーラビリティを備えていると同時に、高可用性と耐久性も提供します。さらに、Spanner の PostgreSQL Interface は使いやすさとポータビリティを備えています。ここ最近の Spanner の価格パフォーマンスは大幅に向上しました。価格を変更することなく、スループットを最大 50% 向上させ、ノードあたりのストレージが 2.5 倍になり、レイテンシも以前よりも小さくなりました。これは当社にとって望ましい条件です。
こうして、Google Cloud は素晴らしいパートナーとなりました。Google Cloud は常に革新を続け、私たちのビジネスの構築と運営を容易にする新しい機能を追加しています。Google Cloud とのパートナーシップが今後どのように進展していくか大変楽しみにしています。
移行戦略
Spanner を利用する前からすでに無料枠を提供していたため、本番環境での規模を拡大しつつ、Spanner の実行に慣れながら、可能な限り最高のユーザー エクスペリエンスを提供できるよう、慎重に移行を進める必要がありました。
Spanner PostgreSQL を使用した新しい無料枠アーキテクチャの開発、テスト、ベンチマークを行った後は、サインアップのごく一部を新しい枠に振り向けるために機能フラグを実装しました。その後、数週間をかけて重要業績評価指標(KPI)を調査し、良好なユーザー エクスペリエンスと予想売上原価(COGS)を確保しました。
時間の経過とともにトラフィックが増加し、現在ではすべての新しい無料枠ユーザーが、新しい Spanner ベースのマルチテナント アーキテクチャを自動的に利用しています。
現在、本番環境ではこのアーキテクチャ上で 40,000 人近くのユーザーが実行しており、全体的なユーザー エクスペリエンスは向上し、無料枠をサポートする費用は 10 分の 1 に削減されています。
まとめ
Pinecone-Spanner のユースケースは、Spanner を使用して革新的でミッション クリティカルなワークロードを構築および実行する方法を示す好例です。
Spanner のスケーラビリティ、信頼性、パフォーマンスのおかげで、Google Cloud 上でお客様に提供している無料トライアルを大規模に拡張することができます。大量のデータとトランザクションを処理できる Spanner は、当社のプラットフォームを強化する優れたプラットフォームとなっています。
詳細:
- Spanner の使用方法を確認し、90 日間の無料トライアル インスタンスを開始しましょう。
- Spanner の価格パフォーマンスの向上について詳しくは、こちらをご覧ください。
-Pinecone、エンジニアリング担当バイス プレジデント Ram Sriharsha 氏
-Pinecone、スタッフ エンジニア Jack Pertschuk 氏