
VespaはYahoo!社内で長年運用されてきた大規模検索プラットフォームが、2017年9月にApache 2.0ライセンスでオープンソース公開されたものです。現在はVerizon Media(後にYahoo Inc.に再ブランド)からスピンアウトする形で2023年に「Vespa.ai」として独立企業化し、引き続きYahoo!の本番トラフィックを支える検索・推薦・ベクトル検索の統合基盤として発展しています。テキスト検索、構造化検索、ベクトル検索、リアルタイム機械学習推論、テンソル演算を一つのクラスタで処理できる珍しい設計で、推薦システムや広告配信、生成AIのRAG基盤に採用される事例が増えています。Yahoo!の検索・ニュース・広告という年間数百億クエリ規模の現場で磨かれてきたという実績が、ハイパースケール領域での信頼性を裏付けています。
この記事の目次
- Yahoo!社内基盤からのOSS化
- テキスト・構造化・ベクトルの統合検索
- 主な活用領域とユースケース
- 学習コストと採用判断の現実
- まとめ
Yahoo!社内基盤からのOSS化

Vespaのルーツは2003年頃からYahoo!社内で開発が続けられてきた検索プラットフォームで、Yahoo!検索、Yahoo!ニュース、Flickr、広告配信などのバックエンドとして利用されてきました。2017年9月、Yahoo!(当時はOath傘下)はそのシステムをApache 2.0で公開し、世界中の開発者が同等のスケール検索を扱えるようにする方針を打ち出しました。公開当時としては既に十数年運用された成熟したシステムが一気にOSS化されたという稀な事例で、コードベースには大規模運用で得られた知見が蓄積されています。
2021年にはYahoo!事業がApolloとVerizonの合弁会社Verizon Mediaから再びYahoo Inc.に分離・売却され、Vespaチームもその下で開発を続けました。2023年10月にはVespaチームが独立企業Vespa.ai社としてスピンアウトし、Yahoo Inc.は引き続き主要ユーザー兼スポンサーとして関与しています。プロジェクトリードはJon Bratseth氏で、20年以上にわたって同システムの設計を一貫して牽引してきた人物として知られています。
テキスト・構造化・ベクトルの統合検索

Vespaの最大の特徴は、テキストの転置インデックス、構造化属性のカラム指向ストレージ、ベクトルのHNSWインデックス、そして高階テンソルを一つのドキュメントモデルで扱える点にあります。ランキングフェーズではテンソル演算式を直接記述でき、ONNXモデルやLightGBM、XGBoostで学習したランキングモデルをそのまま組み込んで実行できます。これにより、検索エンジンとは別にML推論サーバを立てる必要がなく、ドキュメントの全フィールドを使ったコンテキスト推論を低レイテンシで完結できる構造を実現しています。
クラスタは複数のコンテナノードとコンテンツノードに分かれ、ドキュメントはコンテンツノード上で分散シャーディングされます。リアルタイム書き込みのスループットは膨大で、Yahoo!の本番では毎秒数十万件規模の更新を扱った実績があります。ベクトル検索はFloat、Int8、Binary、Tensor型を選べ、HNSWのほか線形探索や近似最近傍探索の組み合わせも設定可能で、ANNとフィルタの統合(フィルタ付きベクトル検索)も標準でサポートされます。
主な活用領域とユースケース

Vespaが特に力を発揮するのは、テキストマッチだけでは精度が出にくく、ユーザー特徴量や商品属性、ベクトル埋め込みなどを総合的に評価しなければならない領域です。Yahoo!ニュースの記事検索、Yahoo!ショッピングの商品レコメンド、広告配信のリアルタイムCTR予測など、いずれも数百万〜数十億ドキュメント規模の検索が必要で、Vespaは長年その本番運用で磨かれてきました。OSS化後はSpotify、Airbnb、Microsoftなどでも採用例があり、推薦・検索を同居させる用途で選ばれる傾向があります。
近年は生成AIのRAG基盤としての注目度が急上昇しています。ドキュメントごとに複数のベクトル(文単位、節単位、Multi-Vector)を保持でき、ColBERTのようなRerankerとも親和性が高い設計のため、検索品質の上限を引き上げたいRAGシステムでの採用が増えました。Vespa Cloudというマネージドサービスも提供されており、自前運用が難しいチームでも数千万件規模の検索を比較的容易に立ち上げられる体制が整っています。
学習コストと採用判断の現実

Vespaは機能の豊富さに比例して学習コストが高いことで知られています。アプリケーションパッケージはXMLとJavaやJSONベースのスキーマで構成され、Ranking expressionやテンソル定義もVespa独自のDSLで書く必要があります。ElasticsearchやMeilisearchがJSON APIだけで完結するのに対し、VespaはJVM言語でのカスタムプラグインを書くことも想定された設計になっており、純粋なREST APIだけの利用に比べてエコシステムへの依存度が高い構造です。
一方で、ハイパースケール領域での運用実績と、テキスト・ベクトル・ML推論を一つのクラスタで扱える設計は他にない強みです。数十億ドキュメント規模の検索や、ランキングモデルを高頻度で更新する本番システム、リアルタイムCTR予測のような領域では「Vespa以外の選択肢が事実上存在しない」と評価されることもあります。中小規模では過剰スペックである一方、大規模化が見えているプロジェクトでは早い段階でVespaを検討する価値が十分にあるエンジンです。
まとめ
VespaはYahoo!の本番運用で鍛え上げられた検索・推薦・ベクトル検索の統合基盤で、現在は独立企業Vespa.aiが開発を主導しています。学習コストの高さとJVM運用の重さは無視できない一方、ハイパースケールでテキストとベクトル、ML推論を統合的に扱える設計は唯一無二であり、大規模なRAGや推薦システムを長期視点で構築するなら検討に値する選択肢です。
※本記事はIT用語辞典の手書きドラフトです。公開前に最新情報・出典を確認のうえ加筆修正してください。

コメント