キーバリュー型データベース

更新日:

用語解説

キーバリュー型データベースは、一意なキーと、そのキーに対応する値の組を基本単位として保存するデータベースです。主な操作はキー指定の取得、追加・更新、削除で、単純なアクセス経路により低遅延と水平分散を実現しやすい方式です。

■ 試験で押さえるポイント

  • 連想配列のようにkey→valueでアクセスし、製品によっては値を不透明なバイト列として扱います。その場合、値の内部条件による検索や結合は基本機能ではありません。

  • キーのハッシュや範囲でノードへ分割しやすく、キャッシュ、セッション、設定値、ショッピングカートなど、キーが分かっている高速アクセスに適します。TTLで期限切れを管理できる製品もあります。

  • 任意列の絞込み、複数表の結合、複雑な集計には二次索引や別システムが必要になり、アクセスパターンを先に設計する必要があります。単純性と問合せ自由度のトレードオフです。

  • 値がJSON文書でも、DBが中のフィールドを理解せずキーだけで扱えばキーバリュー型です。文書内部を索引・検索するドキュメント指向DBとの境界は機能で判断します。

■ 選択肢での判断ポイント

キーが既知のget/put、単純な構造、分散しやすさが手掛かりです。値のフィールド検索ならドキュメント指向、関係探索ならグラフ型、列集計なら列指向を選びます。

例: セッションIDをキー、ログイン利用者やカート内容を直列化した値として保存し、要求ごとにIDで一件取得します。利用者名で全セッションを検索する用途には別の索引が必要です。

音声で聞く

同じ分野の用語