Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
OSS分散ベクトル検索エンジンValdと最新の取り組み
Search
Matts966
August 20, 2025
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OSS分散ベクトル検索エンジンValdと最新の取り組み
Matts966
August 20, 2025
More Decks by Matts966
See All by Matts966
Grafana Dashboard as Code using Grafana Foundation SDK
matts966
3
350
nilarg
matts966
0
180
Static Analysis in Go
matts966
0
3.2k
Phics
matts966
0
100
Other Decks in Programming
See All in Programming
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.7k
RAG の “R” を Swift で覗いてみる 〜「意味から探す」検索の仕組み〜
nao_randd
0
170
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
3
430
The Rails Doctrine Decade
koic
2
600
Simple Storage Service(S3) is not simple
iwatsukayura
0
290
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
670
残高管理から台帳サービスへの進化
artoy
1
200
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
contenteditable と日本語入力に向き合う
colorful12
0
200
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
500
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
350
Docker and Python
trallard
47
4.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
KATA
mclloyd
PRO
35
16k
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