Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DynamoDBの基礎を振り返りながらベクトル検索機能を理解する

 DynamoDBの基礎を振り返りながらベクトル検索機能を理解する

Avatar for 村上優稀

村上優稀

August 24, 2026

More Decks by 村上優稀

Other Decks in Programming

Transcript

  1. 目次 ⚫ DynamoDBのベクトル検索機能がGA(2026/8/5) ⚫ DynamoDBの基礎振り返り ⚫ DynamoDBの仕組み ⚫ DynamoDBの制約とGSI ⚫

    ベクトル検索機能 ⚫ ベクトル検索機能の位置づけ ⚫ ベクトル検索機能の仕組み ⚫ コスト体系とパフォーマンスの仕組み ⚫ DynamoDBの基礎とベクトルインデックス ⚫ まとめ・・・1分 3
  2. 目次 ⚫ DynamoDBのベクトル検索機能がGA(2026/8/5) ⚫ DynamoDBの基礎振り返り ⚫ DynamoDBの仕組み ⚫ DynamoDBの制約とGSI ⚫

    ベクトル検索機能 ⚫ ベクトル検索機能の位置づけ ⚫ ベクトル検索機能の仕組み ⚫ コスト体系とパフォーマンスの仕組み ⚫ DynamoDBの基礎とベクトルインデックス ⚫ まとめ・・・1分 4
  3. 「検索」を軸にしたDynamoDBのアップデート年表 DynamoDB誕生から検索の柔軟性は段階的に広がっていた 2012/01 2013/04 2013/12 DynamoDB GA LSI GA GSI

    GA サービス提供開始 (PK・SKによるシンプルなクエリから) 同一PK内でSKだけ変えられる限定版 PKごと変えられる汎用形に一般化 2018/12 2025/11 2026/08 GSI上限拡張 GSIマルチキー対応 ベクトル検索 GA 5→20個/テーブルへ拡張。 射影属性も100個に PK・SKを最大4属性ずつの複合キーに設 定可能 意味的な類似度検索。 検索軸拡張の最新形 LSI(限定的) → GSI(汎用化) → 拡張・柔軟化 という「検索軸を広げる」流れの延長線上に、ベクトル検索がある 6
  4. 目次 ⚫ DynamoDBのベクトル検索機能がGA(2026/8/5) ⚫ DynamoDBの基礎振り返り ⚫ DynamoDBの仕組み ⚫ DynamoDBの制約とGSI ⚫

    ベクトル検索機能 ⚫ ベクトル検索機能の位置づけ ⚫ ベクトル検索機能の仕組み ⚫ コスト体系とパフォーマンスの仕組み ⚫ DynamoDBの基礎とベクトルインデックス ⚫ まとめ・・・1分 8
  5. DynamoDBの仕組み PKを元に格納 先が決まる PK:USER#mucyan ja_text:私は早く起きる。 en_text:I get up early. →

    O(1) 定数時間 Partition1 Partition4 Partition2 Partition5 Partition3 Partition6 PK SK 日本語文 英語文 USER#mucyan “SENTENCE#202507-21T10:00:00” 私は早く起きる。 I get up early. USER#mucyan “SENTENCE#202507-21T10:05:00” 私は勉強している。 I am studying. USER#alice “SENTENCE#202507-21T09:00:00” 彼女はりんごが好きだ。 She likes apples. USER#alice “SENTENCE#202507-21T09:05:00” 彼女は毎日走っている。 She runs every day. ハッシュ計算によってアクセスすべきノードが一発で決まるため、 データ量がいくら増えても計算量は常に 𝑂 1 となり、 一貫したパフォーマンスを保つことができる。 11
  6. DynamoDBの基礎ふりかえりまとめ ⚫ パーティションキーで検索する範囲を1発で特定できるから DynamoDBは一貫して速い ⚫ GSIはベーステーブルのデータを非同期でコピーして、 別のキー構造で検索できるインデックス ⚫ GSIは非同期コピーだから結果整合性 ⚫

    インデックスに使う属性を持っているアイテムだけが自動的にイ ンデックスされる(Sparse Index) ⚫ GSIを増やすと、WRU(書き込み料金)とストレージ料金が増加 ⚫ アクセスパターンに応じて適切な射影モードを選択するのが良 い 17
  7. 目次 ⚫ DynamoDBのベクトル検索機能がGA(2026/8/5) ⚫ DynamoDBの基礎振り返り ⚫ DynamoDBの仕組み ⚫ DynamoDBの制約とGSI ⚫

    ベクトル検索機能 ⚫ ベクトル検索機能の位置づけ ⚫ ベクトル検索機能の仕組み ⚫ コスト体系とパフォーマンスの仕組み ⚫ DynamoDBの基礎とベクトルインデックス ⚫ まとめ・・・1分 18
  8. ベクトル検索機能の仕組み 埋め込みモデル 埋め込み変換依頼 1 (モデル利用料金) SearchVectors 3 (Vector Searchを消費) アプリ

    2 書き込み (WRU) 非同期コピー Vector Index ベーステーブル (Vector Writeを消費) NumberのListとしてエンベディングした値を保持する 21
  9. コスト体系 ⚫ Vector write request ベクトルインデックスへの書き込みデータ量(GB単位)に課金。 ベクトル本体+射影した非ベクトル属性の合計サイズが対象 ⚫ Vector search

    類似度検索で処理・返却されたデータ量(GB単位)に課金。 インデックスが大きくなるほど検索でスキャンする範囲が広がるため、 処理データ量も比例して増える ⚫ Storage ベクトルインデックスに格納されているデータ量(GB-month)に課 金。 通常のテーブルストレージと同じ課金方式 22
  10. DynamoDBの基礎とベクトルインデックス ⚫ GSIと仕組みは似ている ⚫ 非同期コピーだから結果整合性 ⚫ 射影タイプの選択がコストに影響 ⚫ パーティションキーで検索する範囲を絞る ⚫

    「Vector searchの課金 = 検索リクエストに応答するために処理・返却 されたデータ量」なので、パーティションキーで絞れるかがコストに直結 ⚫ アクセスパターンを把握することが大事 ⚫ 何をキーにするか、どの射影タイプを選択するかはアクセスパターン次第 24
  11. 目次 ⚫ DynamoDBのベクトル検索機能がGA(2026/8/5) ⚫ DynamoDBの基礎振り返り ⚫ DynamoDBの仕組み ⚫ DynamoDBの制約とGSI ⚫

    ベクトル検索機能 ⚫ ベクトル検索機能の位置づけ ⚫ ベクトル検索機能の仕組み ⚫ コスト体系とパフォーマンスの仕組み ⚫ DynamoDBの基礎とベクトルインデックス ⚫ まとめ・・・1分 25