2011-07-29 9 views
7

グラフデータベースにスキーマがありますか?たとえば、他のタイプのノードとの関係を持つノードのタイプを指定できますか?グラフデータベースにスキーマがありますか?

このようなスキーマはどのように見えますか?

+1

グラフデータベースは、特定のSQLバージョンに準拠しているリレーショナルデータベースほど標準化されていません。だから私はあなたが使用するグラフデータベースに依存していると思います。 –

答えて

2

グラフデータベースは、das_weezulのように、この領域で大きく異なります。一般的なケースでは、オブジェクトデータベース(OODB)に近いグラフデータベースにも組み込みのスキーマがサポートされていると思います。グラフデータベースの良い点の1つは、データとメタデータの混合に非常に適していることです。したがって、スキーマサポートとセキュリティの両方を扱う共通のアプローチは、この種のメタデータを非常に同じグラフの(時に隠された)部分に格納することです。

それはNeo4jに来るとき - 私はチームによ - 定義スキーマの使用に少なくとも2つのアプローチは現在あります:

  • 例えば、注釈内のスキーマを定義するSpring Data Graphdocs)を使用しては。
  • データベースの上にmeta-model層を使用します。

myNoSQLでこのトピックについてさらに読むことができます。

3

グラフデータベースには、(少なくとも)頂点とエッジオブジェクトからなる基本スキーマが常に存在します。ここで、エッジには特定の関係に関するデータが含まれます。このスキーマに追加できる程度は、実装によって大きく異なります。たとえば、EdgeやVertexオブジェクトを継承してスキーマをカスタマイズすることができます。

グラフデータベースが基礎となるRDBMSまたはODBMSを使用する場合は、より強力なスキーマの作成および操作機能にアクセスできます。

4

はい。 Neo4J 2とTinkerpop 3の両方に含まれる頂点ラベルの選択に役立つスキーマです。スキーマを書き留めると、グラフの使用方法を明確にすることができますが、ほとんどのデータベースはスキーマに対する検証をサポートしていません。

私はグラフとしてスキーマを描く方法についてより長い記事を持っています。 http://lambdazen.blogspot.com/2014/01/do-property-graphs-have-schemas.html

関連する問題