Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OSS分散ベクトル検索エンジンValdと最新の取り組み
Search
Matts966
August 20, 2025
Programming
0
81
OSS分散ベクトル検索エンジンValdと最新の取り組み
Matts966
August 20, 2025
Tweet
Share
More Decks by Matts966
See All by Matts966
Grafana Dashboard as Code using Grafana Foundation SDK
matts966
3
180
nilarg
matts966
0
160
Static Analysis in Go
matts966
0
3.1k
Phics
matts966
0
82
Other Decks in Programming
See All in Programming
イベントストーミングのはじめかた / Getting Started with Event Storming
nrslib
1
680
Java_プロセスのメモリ監視の落とし穴_NMT_で見抜けない_glibc_キャッシュ問題_.pdf
ntt_dsol_java
0
230
CSC509 Lecture 13
javiergs
PRO
0
260
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.9k
Developing Specifications - Jakarta EE: a Real World Example
ivargrimstad
0
180
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2k
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
5
980
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
2
390
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
6
8.6k
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
150
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
100
Featured
See All Featured
It's Worth the Effort
3n
187
29k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Scaling GitHub
holman
464
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Context Engineering - Making Every Token Count
addyosmani
9
410
Building Applications with DynamoDB
mza
96
6.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Transcript
Vald: The Cloud-Native Vector Database Built for Scale Grafana Dashboards,
YAML-Driven E2E, and Neutral Decision Guides for Kubernetes CNCF 10th Anniversary LINEヤフー株式会社 Matts966 資料URL © vdaas/vald 1
自己紹介 松井誠泰(GitHub: Matts966) LINEヤフー株式会社 OSSのベクトルデータベースValdチームに転職して半年 趣味 © vdaas/vald 2
お品書き Valdのご紹介 最新の取り組み Grafana Foundation SDKを用いたGrafana Dashboard as Code E2E
V2: YAMLで宣言的にテストシナリオを記述 ベクトルDB選定のすすめ © vdaas/vald 3
Valdのご紹介 クラウドネイティブな分 散近似近傍ベクトルDB オープンソース CNCF Landscape vald.vdaas.org © vdaas/vald 4
最新の取り組み 1. Grafana Foundation SDKを用いたGrafana Dashboard as Code 2. E2E
V2: YAMLで宣言的にテストシナリオを記述 © vdaas/vald 5
Grafanaボード管理の課題 コンポーネント毎にボード・パネルをたくさん管理 コンポーネントがかなり違うものの共通化の余地あり 繰り返し、条件分岐したい パネル毎にアップグレード作業 JSONでバージョン管理はしていたものの シンプルなパネルでもGUIからexportされたJSONは大きくな ってしまい、直接読み書きするのが難しい © vdaas/vald
6
grafana-foundation-sdk の概要 Grafana公式が提供する言語ごとのSDK GrafanaのAPIスキーマをベースに自動生成されている Go, TypeScript, Python, Java に対応 ©
vdaas/vald 7
選定理由・メリット 繰り返しを簡単に表現できる 同じようなダッシュボードをコンポーネントごとにつくっている場合などに、関 数等で整理しやすい メトリクスを管理しているコードと同じ言語で書くことで、メトリクス名を参照で き、二重管理を避けられる メトリクスの宣言→ダッシュボード作成まで自動化可能 © vdaas/vald 8
メリット メソッドチェーンで書けるので、補完に沿って書ける テキストなのでLLMの力を借りやすい GUIから出力できるJSONからGoへの自動変換が可能 © vdaas/vald 9
メリット 簡単にバージョンアップグレード 公式がAPIスキーマから自動生成しているので go get でタグを切り替えるだけで簡単に最新に追従できる 網羅性が高い go get github.com/grafana/grafana-foundation-sdk/
[email protected]
+cog-v0.0.x
© vdaas/vald 10
メリット 公式から promql もビルダーが提供されていて、複雑な文字列、括弧の対応の管理を 避けられる © vdaas/vald 11
注意点 grafana/grafana- foundation-sdk#673 パネル配置にバグが あるため 行や列の位置がズレ るなど 自分で整理するコー ドを書く必要あり 現状
puzzle.go としてVald レポジトリで公開 © vdaas/vald 12
結果 コード量を1万行近く削減 ほぼ同じボードを再現 © vdaas/vald 13
最新の取り組み 1. Grafana Foundation SDKを用いたGrafana Dashboard as Code 2. E2E
V2: YAMLで宣言的にテストシナリオを記述 © vdaas/vald 14
E2Eの悩み CRUDの処理がたくさんあるが、コードで書いていると冗長になりがち 違うコードベースに同じようなコードが散らばる データを取り出してアサートする流れも煩雑になりがち © vdaas/vald 15
E2E V2: YAMLで宣言的にテストシナリオを記 述 得られた成果 ジェネリクスを用いた汎用k8s, gRPCクライアント 別環境でもYAMLをもとにk8s JobでE2Eが走る パスで結果を取り出し、アサートできる
並列実行・Loop処理を用いた負荷試験 Future Work PBT: Property Based Testing © vdaas/vald 16
ベクトルDB選定のすすめ CNCFにはハイブリッドサーチをサポートするOpenSearchもあり、検索用途で 推薦・検出などベクトル検索だけ必要で、パフォーマンス重視の方にはValdは 検索手法 エンジン 90 %ile (ms) 99 %ile
(ms) MRR 全文検索 OpenSearch 10.42 23.79 0.605 ハイブリッド サーチ OpenSearch 21.56 28.823 0.661 ベクトル検索 OpenSearch 9.60 11.87 0.619 ベクトル検索 Vald 1.93 2.363 0.615 検索エンジン選定ガイド:ベクトル検索・全文検索からハイブリッドサーチまで LINEヤフー Tech Blog © vdaas/vald 17
Contributions are Welcome! vald.vdaas.org © vdaas/vald 18