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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Matts966
August 20, 2025
Programming
130
0
Share
OSS分散ベクトル検索エンジンValdと最新の取り組み
Matts966
August 20, 2025
More Decks by Matts966
See All by Matts966
Grafana Dashboard as Code using Grafana Foundation SDK
matts966
3
280
nilarg
matts966
0
170
Static Analysis in Go
matts966
0
3.1k
Phics
matts966
0
91
Other Decks in Programming
See All in Programming
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
140
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
310
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
290
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
260
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
520
[KCD Czech] eBPF Meets the GPU: Future of AI Infra Observability
doniacld
0
130
New "Type" system on PicoRuby
pocke
1
400
Modding RubyKaigi for Myself
yui_knk
0
840
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
510
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
430
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
420
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
190
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
340
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
Utilizing Notion as your number one productivity tool
mfonobong
4
310
A Modern Web Designer's Workflow
chriscoyier
698
190k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
180
WENDY [Excerpt]
tessaabrams
11
38k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Are puppies a ranking factor?
jonoalderson
1
3.5k
The SEO identity crisis: Don't let AI make you average
varn
0
480
Product Roadmaps are Hard
iamctodd
PRO
55
12k
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