【とりぷるすとあ】
トリプルストア とは?
最終更新:
💡 主語・述語・目的語の関係を保存するDB
RDFの主語・述語・目的語という3つ組(トリプル)を保存・検索するデータベース。対象同士の関係や値をグラフとして扱い、SPARQLによる関係パターンの問い合わせなどに使う。
📌 このページのポイント
- 主語と目的語を、述語が表す関係で結ぶRDFのトリプルを扱う
- 目的語には別の対象だけでなく、文字列や数値などの値も使える
- SPARQLでは、トリプルのつながりに合うデータをパターンで検索する
- 推論の有無や規則は実装・設定による。保存した内容の正しさが自動保証されるわけではない
3つ組って何を並べるの?
たとえば「会員A・所属・チームB」だよ。主語は会員A、述語は所属という関係、目的語はチームB。RDFでは、対象の識別子や値を使ってこの関係を記述するんだ。
人間向けの名前だけで保存するの?
RDFはファイルの種類なの?
関係を表すデータモデルだよ。同じRDFデータをTurtleやJSON-LDなど複数の書式で表せる。トリプルストアは、そのデータを保存して問い合わせるためのものなんだ。
関係をどうやって検索するの?
SPARQLでは「会員が所属するチーム」「そのチームの部門」のように、探したい関係のパターンを書くよ。データに合う組み合わせを探せる。実装の例にはApache JenaのTDB2があるんだ。
関係を入れれば、すべて正しく推論してくれる?
推論するには規則や対応する仕組みが必要だよ。RDFを保存するだけで人間のように意味を理解するわけではないし、元のデータが誤っていれば結果も誤り得る。識別子や関係の意味をそろえることも大切なんだ。
まとめ:ざっくりこれだけ覚えればOK!
「トリプルストア」って出てきたら「主語・述語・目的語の3つ組で関係を保存・検索するDB」と思えばだいたいOK!
📖 おまけ:英語の意味
「Triple Store」 = 3つ組格納庫
💬 Triple(3つ組)をStore(格納)するデータベースという意味だよ。RDFのデータ単位が3要素のトリプルだから、この名前になったんだ