トリプル ストアには、トリプルspo
(主語、述語、目的語) が含まれています。そのように保存されたグラフに対するクエリは、クエリに一致するノードを見つけるために、多くのグラフをトラバースする必要がある場合があります。AllegroGraph は、トラバーサルを高速化するインデックスを格納できます。たとえば、最初に一致するすべての述語と、接続されている主語ノードと目的語ノードを見つける場合、最初に述語を見つけるインデックスを使用できますpso
。トリプルに追加できる名前付きグラフがある場合g
、すべてのトリプルに ids がありi
ます。したがって、AG は index を使用できますpsogi
。(ドキュメントから: AllegroGraph Triple Indices )
AG トリプル ストアは、インデックスの既定のセットで作成されます。特殊なインデックスの生成はリソースを大量に消費しますが、取得するクエリの種類がわかっている場合は、適切なインデックスを指定して応答時間を最適化する価値があることに気付くかもしれません。
コマンドラインからロードしている場合:
次の例では、1 つのファイルを AllegroGraph にロードします。
./agload --with-indices "ospgi,posgi,spogi" トリプル ストアは、ospgi、posgi、spogi の 3 つのトリプル インデックスを生成します。
( のドキュメントからagload
)
REST インターフェイスを使用している場合は、指定したインデックスでリポジトリを作成できます。
PUT /repositories/[名前]
パラメータでindex
:
index 何度でも指定できます。インデックス ID を保持する必要があり、ストア用に作成された一連のインデックスを構成するために使用されます。
( のドキュメントからput repo
)
または、トリプルをロードしてから次のように実行できます。
PUT /repositories/[name]/indices/[type] type で示されるインデックスがこのストアに存在することを確認します。コミット時に有効になります (もちろん、共有バックエンドまたは自動コミット セッションを使用している場合はすぐです)。
( のドキュメントからput index
)