グラフ・データ・モデリングの例
大きなデータ・モデル作成の詳細。
複雑なデータ・モデルを作成するレシピの例をさらに詳しく検討してみましょう。この例では、グラフ・データベースのデータ・モデルの作成の背景にある考えについて検討します。
手順
-
辺によって接続される頂点が必要であることは言うまでもありません。作成者とレシピの他に、考えられる頂点のタイプは何でしょうか。
当然のことですが、材料(igredients)頂点ラベルを加えることができます。この頂点はいくつかのプロパティを持つことになります。頂点プロパティの可能性について考えてみてください。
材料の頂点について最も可能性の高いプロパティは、材料の名前です。
ingredientName
を使用して材料の名前を識別することも可能ですが、スキーマを小さく保つことはDSE Graphでは有利です。我々の例では、あらゆる頂点のラベルでname
を繰り返し利用します。 -
材料の頂点プロパティにとって重要であると思われる可能性が他にもあります。その可能性について検討して書き出してください。それらは後で追加します。では、作成者、レシピ、材料を接続する辺の検討に移りましょう。
さまざまなタイプの辺の認識に使用できる辺ラベルは何でしょうか。「作った(created)」辺によって作成者とレシピを結ぶことは前に述べました。
レシピ(recipe)には材料(ingredient)が含まれていなければならないので、「含まれる(includes)」という辺でこの2つの頂点を結ぶことができます。
-
また、辺には、後でクエリーの絞り込みを行うときに使用できるプロパティがあります。
includesにとってどのような辺プロパティが適切でしょうか?
レシピに含まれている材料の量(amount)は重要です。小さじ1杯の塩ではなく、1カップの塩とすると、結果は大きく異なります。
-
現在は、多くの人がネット上や料理本などで自身のレシピを公開しています。レストランは、レシピを基に定価で提供する食事を作っています。消費者は、作ってみようと思うレシピを調べます。その結果がデータを相互に結び付けたグラフになります。
-
このグラフには多数の頂点と辺を追加できます。たとえば、レシピの作成者の性別やレビュー者を含めることができます。材料の栄養成分をレシピのカロリーから得ることもできます。料理のレシピは何人分であるのかという情報は調理の際に役立ちます。その結果、データ網が急激に拡大します。
何百もの作成者、何千ものレシピ、何万ものレビューを追加してみると、グラフがどれだけ巨大なものかがわかるでしょう。しかし、後のセクションで説明するように、DSE Graphは複雑な検索やパターン一致検索を簡単で強力なソリューションに変換できるのです。
次のタスク
データ・モデルは、グラフ作成の最初のステップです。データ・モデルを使用すれば、DSE Graphがデータを格納する方法を定義するスキーマを作成できます。