Allegrographは、基本的にRDFトリプル(実際には5フィールド)ストアです。では、なぜ5つの列を持つMySQLテーブルを作成し、それらにトリプルを格納できないのでしょうか。?
AGはそのようなMySqlテーブルに対してどのような機能を持っていますか?
Allegrographは、基本的にRDFトリプル(実際には5フィールド)ストアです。では、なぜ5つの列を持つMySQLテーブルを作成し、それらにトリプルを格納できないのでしょうか。?
AGはそのようなMySqlテーブルに対してどのような機能を持っていますか?
簡単に言えば、SPARQLをサポートしています
SPARQLはRDFのクエリ言語であり、SQLとはまったく異なるセマンティクスを持っています。SPARQLをSQLクエリに変換するツールがありますが、パフォーマンスが非常に悪いことがよくあります。さらに、 SPARQL仕様には多くの機能(特に組み込み関数)があり、MySQLには同等のものがないため、ストアドプロシージャ/ユーザー定義関数を使用するか、コードで実行する必要があります。
SPARQLの評価は、SQLの評価とはまったく異なります。これは、SPARQLが多くの複雑な結合にはるかに依存しているため、SPARQLストアは、SQLオプティマイザーと同じ原理で動作するが、従来のRDBMSとは非常に異なる種類のクエリに対処するように設計されたオプティマイザーを使用します。通常は処理します。
一般に、5列のテーブルは非常に単純です。これは、各列に複数の部分がある複雑なアイテムが含まれており、複数のテーブルを使用して保存する方がよいためです。また、単一のテーブルアプローチでは、より正規化されたテーブル設計よりも大規模なストレージ要件が発生します。
気になるのがSQLデータベースとの間でRDFトリプルを保存およびロードすることだけである場合は、単純な単一テーブルのアプローチで十分な場合があります。実際に何か便利なことをしたい場合は、より複雑なSQLデータベーススキーマまたはAllegroGraphのような適切なRDFストアが必要です。
AllegroGraphは、ACID準拠のRDFグラフデータベースの業界標準を設定し、セマンティックテクノロジーを利用するOLTP、推論、およびビジネスインテリジェンスアプリケーション向けに最適化されています。
では、RDFグラフデータベースをシミュレートするために単一の5列のテーブルを作成することにした場合、何が欠けているでしょうか。