グラフデータベース( GDB )は、ノード、エッジ、プロパティを使用してセマンティッククエリにグラフ構造を使用してデータを表し、保存するデータベースです。 [1]このシステムの重要な概念はグラフ(またはエッジまたは関係) です。グラフは、ストア内のデータ項目をノードとエッジのコレクションに関連付けます。エッジはノード間の関係を表します。関係により、ストア内のデータを直接リンクでき、多くの場合、1 回の操作で取得できます。グラフデータベースは、データ間の関係を優先します。関係はデータベースに永続的に保存されるため、クエリは高速です。関係はグラフデータベースを使用して直感的に視覚化できるため、相互接続が密集したデータに役立ちます。[2]
グラフデータベースは、一般的にNoSQLデータベースと呼ばれます。グラフデータベースは、一般的なグラフを表現するという点で1970年代のネットワークモデルデータベースに似ていますが、ネットワークモデルデータベースは抽象化のレベルが低く[3]、エッジのチェーンを簡単にトラバーサルすることができません。 [4]
グラフ データベースの基盤となるストレージ メカニズムはさまざまです。関係はグラフ データベースの第一級オブジェクトであり、ラベル付け、方向付け、およびプロパティの指定が可能です。一部はリレーショナル エンジンに依存し、グラフ データをテーブルに格納します(ただし、テーブルは論理要素であるため、このアプローチではグラフ データベース管理システムと物理ストレージ デバイスの間に抽象化のレベルが課せられます)。その他のものは、キーと値のストアまたはドキュメント指向のデータベースをストレージとして使用し、本質的に NoSQL 構造になっています。
2021年現在[アップデート]、リレーショナルデータベースに対するSQLのように広く採用されているグラフクエリ言語はなく、多種多様なシステムがあり、その多くは1つの製品に密接に結びついています。初期の標準化の取り組みにより、Gremlin、SPARQL、Cypherなどのマルチベンダークエリ言語が生まれました。2019年9月、新しい標準グラフクエリ言語(ISO/IEC 39075情報技術—データベース言語—GQL)を作成するプロジェクトの提案が、ISO/IEC合同技術委員会1(ISO/IEC JTC 1)のメンバーによって承認されました。GQLは、SQLのような宣言型データベースクエリ言語となることを目的としています。クエリ言語インターフェースに加えて、一部のグラフデータベースにはアプリケーションプログラミングインターフェース(API)を介してアクセスします。
グラフデータベースはグラフ計算エンジンとは異なります。グラフデータベースは、リレーショナルオンライントランザクション処理(OLTP)データベースを翻訳した技術です。一方、グラフ計算エンジンは、バルク分析のためのオンライン分析処理(OLAP)で使用されます。 [5]グラフデータベースは、大手テクノロジー企業が独自のグラフデータベースを使用して成功したことと、 [6]オープンソースのグラフデータベースの導入により、2000年代に大きな注目を集めました。
ある研究では、RDBMSはグラフクエリを実行する際のパフォーマンスにおいて既存のグラフ分析エンジンと「同等」であると結論付けられました。[7]
歴史
1960年代半ばには、IBMのIMSなどのナビゲーションデータベースは階層モデルでツリーのような構造をサポートしていましたが、厳密なツリー構造は仮想レコードによって回避できました。[8] [9]
グラフ構造は、1960 年代後半からネットワーク モデル データベースで表現できるようになりました。1959年にCOBOL を定義したCODASYLは、1969 年にネットワーク データベース言語を定義しました。
ラベル付きグラフは、1980年代半ばから論理データモデルなどのグラフデータベースで表現されるようになりました。[10] [11]
商用オブジェクト データベース(ODBMS) は 1990 年代初頭に登場しました。2000 年に、Object Data Management Group は、 ODMG'93 出版物で、オブジェクトと関係 (グラフ) 構造を定義するための標準言語を公開しました。
1990 年代初頭にはグラフ データベースに対するいくつかの改良が登場し、1990 年代後半には Web ページのインデックス作成の取り組みによりその進歩は加速しました。
2000 年代半ばから後半にかけて、Neo4jやOracle Spatial and Graphなど、ACID保証を備えた商用グラフ データベースが利用可能になりました。
2010年代には、水平方向に拡張可能な商用ACIDグラフデータベースが利用可能になりました。さらに、SAP HANAはグラフデータベースにインメモリおよび列指向技術をもたらしました。[12]また、2010年代には、OrientDB、ArangoDB、MarkLogic (バージョン7.0以降)など、グラフモデル(およびリレーショナルデータベースやドキュメント指向データベースなどの他のモデル)をサポートするマルチモデルデータベースが利用可能になりました。この間、ソーシャルメディア企業の出現により、さまざまな種類のグラフデータベースがソーシャルネットワーク分析で特に人気になりました。また、この10年間で、Amazon NeptuneやNeo4j AuraDBなどのクラウドベースのグラフデータベースが利用可能になりました。
背景
グラフ データベースは、データを概念的に表現します。これは、データをノードに、その関係をエッジに転送することによって実現されます。
グラフ データベースは、グラフ理論に基づいたデータベースです。ノードまたはエッジであるオブジェクトのセットで構成されます。
- ノードは、人、企業、アカウント、または追跡されるその他の項目などのエンティティまたはインスタンスを表します。これらは、リレーショナル データベースのレコード、リレーション、または行、またはドキュメント ストア データベースのドキュメントとほぼ同等です。
- エッジは、グラフまたは関係とも呼ばれ、ノードを他のノードに接続する線であり、それらの関係を表します。ノード、プロパティ、エッジの接続と相互接続を調べると、意味のあるパターンが浮かび上がります。エッジは有向または無向のいずれかです。無向グラフでは、2 つのノードを接続するエッジは 1 つの意味を持ちます。有向グラフでは、2 つの異なるノードを接続するエッジは、方向に応じて異なる意味を持ちます。エッジはグラフ データベースの重要な概念であり、リレーショナル モデルやドキュメント ストア モデルでは直接実装されない抽象化を表します。
- プロパティはノードに関連付けられた情報です。たとえば、Wikipedia がノードの 1 つである場合、Wikipediaのどの側面が特定のデータベースに関連しているかに応じて、Web サイト、参考資料、文字 w で始まる単語などのプロパティに関連付けられる可能性があります。
グラフモデル
ラベル付きプロパティグラフ

ラベル付きプロパティグラフモデルは、ノード、関係、プロパティ、ラベルのセットで表されます。データのノードとその関係は両方とも名前が付けられ、キーと値のペアで表されるプロパティを格納できます。ノードにはラベルを付けてグループ化できます。関係を表すエッジには2つの特性があります。常に開始ノードと終了ノードを持ち、有向です。[13]グラフは有向グラフになります。関係にはプロパティもあります。これは、ノードの関係に追加のメタデータとセマンティクスを提供するのに役立ちます。[14]関係を直接格納すると、定数時間の トラバーサルが可能になります。[15]
リソース記述フレームワーク (RDF)

RDFグラフ モデルでは、情報の追加はそれぞれ別のノードで表されます。たとえば、グラフ内で別個のノードとして表される人物の名前プロパティをユーザーが追加する必要があるシナリオを想像してください。ラベル付きプロパティ グラフ モデルでは、これは人物のノードに名前プロパティを追加することで行われます。ただし、RDF では、ユーザーは と呼ばれる別のノードを追加して、hasNameそれを元の人物ノードに接続する必要があります。具体的には、RDF グラフ モデルはノードとアークで構成されます。RDF グラフ表記またはステートメントは、主語のノード、目的語のノード、述語のアークによって表されます。ノードは空白のままにすることも、リテラルにすることも、URIで識別することもできます。アークも URI で識別できます。ノードのリテラルには、プレーン (型なし) と型付きの 2 つのタイプがあります。プレーン リテラルには、語彙形式とオプションで言語タグがあります。型付きリテラルは、特定のデータ型を識別する URI を持つ文字列で構成されます。データにURIがない場合、空白ノードはデータの状態を正確に示すために使用されることがあります。[16]
プロパティ
グラフ データベースは、グラフのようなクエリを実行するための強力なツールです。たとえば、グラフ内の 2 つのノード間の最短パスを計算します。その他のグラフのようなクエリは、グラフ データベース上で自然な方法で実行できます (たとえば、グラフの直径の計算やコミュニティの検出など)。
グラフは柔軟性があり、ユーザーはアプリケーションの機能を損なうことなく、既存のグラフに新しいデータを挿入できます。データベースの設計者は、データベースの将来の使用例について詳細に計画する必要はありません。
ストレージ
グラフ データベースの基盤となるストレージ メカニズムはさまざまです。リレーショナル エンジンに依存し、グラフ データをテーブルに「保存」するものもあります(ただし、テーブルは論理要素であるため、このアプローチでは、グラフ データベース、グラフ データベース管理システム、およびデータが実際に保存される物理デバイスの間に別のレベルの抽象化が課されます)。その他のデータベースでは、キーと値のストアまたはドキュメント指向のデータベースをストレージに使用し、本質的にNoSQL構造になっています。ノードは他のドキュメント ストアと同じように表現されますが、2 つの異なるノードをリンクするエッジは、そのドキュメント内に _from 属性と _to 属性という特別な属性を保持します。
インデックスフリー隣接
データ検索のパフォーマンスは、ある特定のノードから別のノードへのアクセス速度に依存します。インデックスフリーの隣接性により、ノードは直接の物理RAMアドレスを持ち、他の隣接ノードを物理的にポイントするように強制されるため、検索が高速になります。インデックスフリーの隣接性を備えたネイティブ グラフ システムでは、ノード間のリンクを見つけるために他の種類のデータ構造を移動する必要がありません。グラフ内の直接関連するノードは、ノードの 1 つが取得されるとキャッシュに格納されるため、ユーザーが最初にノードを取得するときよりもデータ検索が高速になります。ただし、このような利点には代償があります。インデックスフリーの隣接性により、グラフ トラバーサルを使用しないクエリの効率が犠牲になります。ネイティブ グラフ データベースは、格納されたデータに対する CRUD操作を処理するためにインデックスフリーの隣接性を使用します。
アプリケーション
データの種類によって複数のグラフのカテゴリが認識されています。ガートナーは、グラフの5つの大まかなカテゴリを提案しています。[17]
- ソーシャルグラフ:これは人々のつながりに関するもので、例としてはFacebook、Twitter 、 6次の隔たりの考え方などがあります。
- 意図グラフ: 推論と動機を扱います。
- 消費グラフ: 「支払いグラフ」とも呼ばれる消費グラフは、小売業界で頻繁に使用されます。Amazon、eBay、Walmart などの電子商取引企業は、消費グラフを使用して個々の顧客の消費を追跡します。
- 興味グラフ: これは個人の興味をマッピングするもので、多くの場合、ソーシャル グラフによって補完されます。Web ページをインデックスするのではなく、興味に基づいて Web をマッピングすることで、Web 編成の以前の革命に従う可能性があります。
- モバイル グラフ: これはモバイル データから構築されます。将来のモバイル データには、Web、アプリケーション、デジタル ウォレット、GPS、モノのインターネット(IoT) デバイスからのデータが含まれる可能性があります。
リレーショナルデータベースとの比較
エドガー・F・コッドが1970年にリレーショナルモデルについて発表して以来、[18] リレーショナルデータベースは大規模データストレージシステムの事実上の業界標準となっています。リレーショナルモデルでは、データを多数のテーブルに分割し、データベース内の重複データを削除する厳格なスキーマとデータ正規化が必要です。データの一貫性を維持し、ACIDトランザクションをサポートするために、データは正規化されます。しかし、これにより関係を照会する方法に制限が課せられます。
リレーショナルモデルの設計動機の1つは、行ごとの高速アクセスを実現することでした。[18]格納されたデータ間で複雑な関係を形成する必要があるときに問題が発生します。関係はリレーショナルモデルで分析できますが、複数のテーブルにわたる多くの異なる属性に対して多くの結合操作を実行する複雑なクエリが必要です。リレーショナルモデルを使用する場合、関係を取得するときに外部キー制約も考慮する必要があり、追加のオーバーヘッドが発生します。
グラフ データベースは、リレーショナル データベースと比較して、連想データ セットの処理速度が速いことが多く[引用が必要] 、オブジェクト指向アプリケーションの構造により直接的にマッピングされます。グラフ データベースは、通常、コストがかかる結合操作を必要としないため、大規模なデータセットに自然に拡張できます[引用が必要]。グラフ データベースは、厳格なスキーマへの依存度が低いため、進化するスキーマを使用してアドホックで変化するデータを管理するのに適しているとされています。
逆に、リレーショナル データベース管理システムは、通常、大量のデータ要素に対して同じ操作を実行する方が高速であり、データの自然な構造での操作が可能です。グラフ データベースはリレーショナル データベースよりも優れており、最近人気が高まっていますが、グラフ モデル自体が既存のリレーショナル データベースを置き換える唯一の理由ではないことが推奨されます。パフォーマンスが桁違いに向上し、レイテンシが低減するという証拠があれば、グラフ データベースが重要になる場合があります。[19]
例
リレーショナル モデルは、データ内の情報を使用してデータをまとめて収集します。たとえば、電話番号に市外局番「311」が含まれるすべての「ユーザー」を検索するとします。これは、選択したデータストアまたはテーブルを検索し、選択した電話番号フィールドで文字列「311」を探すことによって行われます。これは大きなテーブルでは時間のかかるプロセスになる可能性があるため、リレーショナル データベースではインデックスを提供しています。インデックスを使用すると、選択したデータとレコードの一意のキー(または主キー) のみを含む小さなサブテーブルにデータを保存できます。電話番号にインデックスが付けられている場合は、同じ検索が小さなインデックス テーブルで行われ、一致するレコードのキーが収集され、次にそれらのキーを持つレコードがメイン データ テーブルで検索されます。通常、テーブルはキーによる検索が非常に高速になるように保存されます。[20]
リレーショナル データベースには、レコード間の固定された関係という概念は本質的にuserpk含まれていません。代わりに、あるレコードの一意のキーを別のレコードのデータに格納することで、関連するデータが互いにリンクされます。たとえば、ユーザーの電子メール アドレスを含むテーブルには、関連付けられているユーザー レコードの主キーuserpkを含む というデータ項目が含まれている場合があります。ユーザーと電子メール アドレスをリンクするために、システムはまず、選択したユーザー レコードの主キーを検索し、電子メール テーブル (または、それらのインデックス) の列でそれらのキーを探し、電子メール データを抽出し、次にユーザー レコードと電子メール レコードをリンクして、選択したすべてのデータを含む複合レコードを作成します。結合と呼ばれるこの操作は、計算コストが高くなる可能性があります。クエリの複雑さ、結合の数、およびさまざまなキーのインデックスによっては、システムは複数のテーブルとインデックスを検索し、すべてを並べ替えて一致させる必要がある場合があります。[20]
対照的に、グラフ データベースはレコード間の関係を直接保存します。userpk列内のユーザーのキーを検索して電子メール アドレスを見つける代わりに、ユーザー レコードには電子メール アドレス レコードを直接参照するポインターが含まれています。つまり、ユーザーを選択すると、ポインターをたどって電子メール レコードに直接移動できるため、一致するレコードを見つけるために電子メール テーブルを検索する必要はありません。これにより、コストのかかる結合操作が不要になります。たとえば、市外局番「311」のユーザーのすべての電子メール アドレスを検索する場合、エンジンは最初に従来の検索を実行して「311」のユーザーを見つけますが、次にそれらのレコードで見つかったリンクをたどって電子メール アドレスを取得します。リレーショナル データベースは、最初に「311」のすべてのユーザーを見つけ、主キーのリストを抽出し、それらの主キーを持つ電子メール テーブル内のレコードをもう一度検索して、一致するレコードをリンクします。これらの一般的な操作の場合、グラフ データベースは理論的にはより高速です。[20]
グラフ アプローチの真の価値は、1 レベル以上の深さの検索を実行するときに明らかになります。たとえば、"311" の市外局番に "subscribers" (ユーザーを他のユーザーにリンクするテーブル) を持つユーザーを検索する場合を考えてみましょう。この場合、リレーショナル データベースは、まず "311" の市外局番を持つすべてのユーザーを検索し、次にそれらのユーザーのいずれかを subscribers テーブルで検索し、最後に一致するユーザーを取得するために users テーブルを検索する必要があります。対照的に、グラフ データベースは "311" のすべてのユーザーを検索し、次にsubscriber 関係を通じてバックリンクをたどってsubscriber ユーザーを見つけます。これにより、複数の検索、ルックアップ、および出力を作成するために必要な複数のレコードからの一時データをすべて保持するためのメモリ使用量が回避されます。ビッグO 表記法で言えば、このクエリは時間、つまりデータ サイズの対数に比例します。対照的に、リレーショナル バージョンでは、複数のルックアップと、すべてのデータ レコードを結合するために必要な時間が必要になります。[20]
グラフ検索の相対的な利点は、クエリの複雑さとともに増大します。たとえば、「潜水艦に関する映画で、その映画に出演した俳優が、風と共に去りぬで主役を演じた別の俳優と一緒に出演していた」ことを知りたい場合があります。これには、まずシステムが風と共に去りぬの俳優を見つけ、彼らが出演したすべての映画を見つけ、それらのすべての映画で風と共に去りぬで主役を演じなかったすべての俳優を見つけ、次に彼らが出演したすべての映画を見つけ、最後にそのリストを「潜水艦」を含む説明を持つ俳優に絞り込む必要があります。リレーショナル データベースでは、映画と俳優のテーブルを個別に複数回検索し、潜水艦の映画で別の検索を行い、それらの映画に出演したすべての俳優を見つけ、次に収集された (大量の) 結果を比較する必要があります。対照的に、グラフ データベースは風と共に去りぬからクラーク ゲーブルまでたどり、彼が出演した映画へのリンクを収集し、それらの映画から他の俳優へのリンクを収集し、それらの俳優から映画のリストに戻るリンクをたどります。結果の映画リストは「潜水艦」で検索できます。これらすべてを1回の検索で実行できます。[21]
プロパティは、この構造にもう 1 つの抽象化レイヤーを追加し、多くの一般的なクエリも改善します。プロパティは基本的に、任意のレコード、または場合によってはエッジにも適用できるラベルです。たとえば、Clark Gable に「俳優」というラベルを付けると、システムは、監督やカメラマンではなく、俳優であるすべてのレコードをすばやく見つけることができます。エッジにラベルを付けることができる場合は、「風と共に去りぬ」と Clark Gable の関係に「主演」というラベルを付け、映画「風と共に去りぬ」の「主演」「俳優」である人物を検索すると、データベースはVivien Leigh、Olivia de Havilland、Clark Gable を生成します。同等の SQL クエリは、人物と映画をリンクするテーブル内の追加データに依存する必要があり、クエリ構文がさらに複雑になります。これらの種類のラベルは、特定の状況で検索パフォーマンスを向上させる可能性がありますが、一般的には、エンド ユーザーにセマンティック データを追加する場合に便利です。[21]
リレーショナル データベースは、データ間の関係が 1 レベルまたは 2 レベルの深さしかないフラットなデータ レイアウトに非常に適しています。たとえば、会計データベースでは、特定の顧客のすべての請求書のすべての明細項目を検索する必要があり、これは 3 つの結合クエリです。グラフ データベースは、より多くのリンクを含むデータセットを対象としています。特に、 "友達" 関係が本質的に無制限であるソーシャル ネットワーキングシステムに適しています。これらの特性により、グラフ データベースは、オンライン システムやビッグ データ環境でますます一般的になっている検索の種類に自然に適しています。このため、グラフ データベースは、Facebook、Google、Twitterなどの大規模なオンライン システムや、レコード間の深いリンクを持つ同様のシステムで非常に人気が高まっています。
さらに詳しく説明すると、および列peopleを持つテーブルとおよびを持つテーブル (テーブルからの外部キーである) の 2 つのテーブルを持つリレーショナル モデルを想像してください。この場合、ジャックの友達全員を検索すると、次の SQL クエリが実行されます。
person_idperson_namefriendfriend_idperson_idpeople
SELECT p2 . person_name FROM people p1 JOIN friend ON ( p1 . person_id = friend . person_id ) JOIN people p2 ON ( p2 . person_id = friend . friend_id ) WHERE p1 . person_name = 'Jack' ;
同じクエリは次のように翻訳できます。
- グラフデータベースクエリ言語Cypher
MATCH ( p1 : person { name : 'Jack' }) -[ : FRIEND_WITH ]- ( p2 : person ) RETURN p2 . name
- SPARQL は、 W3Cによって標準化され、複数の RDFトリプルおよびクアッドストア
で使用されるRDF グラフ データベースクエリ言語です。
- 長い形式
プレフィックス foaf : <http://xmlns.com/foaf/0.1/> SELECT ?name WHERE { ?s a foaf : Person . ?s foaf : name "Jack" . ? s foaf : ?o を知っている . ?o foaf : name ?name . }
- 短縮形
プレフィックス foaf : <http://xmlns.com/foaf/0.1/> SELECT ?name WHERE { ?s foaf : name "Jack" ; foaf : ?oを知っています 。?o foaf : name ?name . }
- 長い形式
- SPASQL は、 SQL をSPARQLで拡張したハイブリッド データベース クエリ言語です。
SELECT people . name FROM ( SPARQL PREFIX foaf : <http://xmlns.com/foaf/0.1/> SELECT ?name WHERE { ?s foaf : name "Jack" ; foaf :知っている ?o . ?o foaf : name ?name . } ) AS people ;
上記の例は、基本的な関係クエリの簡単な説明です。これらは、データの総量に応じて増加するリレーショナル モデルのクエリの複雑さの概念を凝縮したものです。これに対して、グラフ データベース クエリでは、関係グラフを簡単に並べ替えて結果を表示できます。
また、グラフデータベースの単純で凝縮された宣言的なクエリは、リレーショナルデータベースと比較して必ずしも優れたパフォーマンスを提供しないことを示す結果もあります。グラフデータベースはデータの直感的な表現を提供しますが、リレーショナルデータベースはセット操作が必要な場合に優れた結果を提供します。[15]
グラフデータベースの一覧
注目すべきグラフ データベース の一覧は次のとおりです。
グラフクエリプログラミング言語
- AQL (ArangoDB クエリ言語) :ドキュメントとグラフの両方でArangoDBで使用される SQL のようなクエリ言語
- Cypherクエリ言語(Cypher):グラフへのアドホックかつプログラム的な(SQLのような)アクセスを可能にするNeo4j用のグラフクエリ宣言型言語。 [45]
- GQL : 提案された ISO 標準グラフ クエリ言語
- GraphQL : API 用のオープンソースのデータクエリおよび操作言語。Dgraph は、DQL (旧称 GraphQL+-) と呼ばれる修正された GraphQL 言語を実装します。
- Gremlin : Apache TinkerPopオープンソースプロジェクトの一部であるグラフプログラミング言語[46]
- SPARQL : RDF 形式で保存されたデータを取得および操作できる RDF データベース用のクエリ言語
- 通常のパスクエリ、グラフデータベースのクエリのための理論言語
参照
- グラフ変換
- 階層型データベースモデル
- データログ
- ヴァダログ
- オブジェクトデータベース
- RDF データベース
- 構造化ストレージ
- テキストグラフ
- Wikidata は、グラフ データベースにデータを保存する Wikipedia の姉妹プロジェクトです。通常の Web ブラウジングでは、ノードの表示、エッジの追跡、SPARQLクエリの実行が可能です。
参考文献
- ^ ブルバキス、ニコラオス G. (1998)。人工知能とオートメーション。ワールドサイエンティフィック。p. 381。ISBN 9789810226374. 2018年4月20日閲覧。
- ^ Yoon, Byoung-Ha; Kim, Seon-Kyu; Kim, Seon-Young (2017年3月). 「異種生物学データの統合のためのグラフデータベースの使用」. Genomics & Informatics . 15 (1): 19–27. doi :10.5808/GI.2017.15.1.19. ISSN 1598-866X. PMC 5389944. PMID 28416946 .
- ^ Angles, Renzo; Gutierrez, Claudio (2008 年 2 月 1 日). 「グラフ データベース モデルの調査」(PDF) . ACM Computing Surveys . 40 (1): 1–39. CiteSeerX 10.1.1.110.1072 . doi :10.1145/1322432.1322433. S2CID 207166126. 2017 年 8 月 15 日の オリジナル(PDF)からアーカイブ。2016 年5 月 28 日取得。ネットワーク
モデル [...] は適切な抽象化レベルを欠いています。データベース モデルを実際の実装から分離することが困難です。
- ^ Silberschatz, Avi (2010 年 1 月 28 日). データベース システム コンセプト、第 6 版(PDF) . McGraw-Hill. p. D-29. ISBN 978-0-07-352332-3。
- ^ Robinson, Ian (2015-06-10). グラフデータベース: 接続されたデータの新しい機会。O'Reilly Media, Inc. p. 4. ISBN 9781491930861。
- ^ 「グラフデータベースが主流に突入」www.kdnuggets.com . 2018年10月23日閲覧。
- ^ Fan, Jing; Gerald, Adalbert (2014-12-25). 特化されたグラフ分析エンジンに対する反論(PDF)。革新的データシステム研究会議 (CIDR)。
- ^ Silberschatz, Avi (2010 年 1 月 28 日). データベース システム コンセプト、第 6 版(PDF) . McGraw-Hill. p. E-20. ISBN 978-0-07-352332-3。
- ^ パーカー、ロレーヌ。「IMSノート」。vcu.edu 。 2016年5月31日閲覧。
- ^ Angles, Renzo; Gutierrez, Claudio (2008 年 2 月 1 日). 「グラフ データベース モデルの調査」(PDF) . ACM Computing Surveys . 40 (1): 1–39. CiteSeerX 10.1.1.110.1072 . doi :10.1145/1322432.1322433. S2CID 207166126. 2017 年 8 月 15 日の オリジナル(PDF)からアーカイブ。2016 年5 月 28 日取得。ネットワーク
モデル [...] は適切な抽象化レベルを欠いています。データベース モデルを実際の実装から分離することが困難です。
- ^ Kuper, Gabriel M. (1985). 論理データモデル: データベースロジックへの新しいアプローチ(PDF) (Ph.D.). Docket STAN-CS-85-1069. 2016年6月30日時点のオリジナルよりアーカイブ(PDF) 。 2016年5月31日閲覧。
- ^ 「SAP、HANAによるクラウドの新機能を発表」2014年10月22日。 2016年7月7日閲覧。
- ^ Frisendal, Thomas (2017-09-22). 「プロパティグラフ」. graphdatamodeling.com . 2018-10-23閲覧。
- ^ Das, S; Srinivasan, J; Perry, Matthew; Chong, Eugene; Banerjee, Jay (2014-03-24). 「2 つのグラフの物語: Oracle での RDF としてのプロパティ グラフ」
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ ab Have, Christian Theil; Jensen, Lars Juhl (2013-10-17). 「グラフデータベースはバイオインフォマティクスに対応できるか?」バイオインフォマティクス. 29 (24): 3107–3108. doi :10.1093/bioinformatics/btt549. ISSN 1460-2059. PMC 3842757. PMID 24135261 .
- ^ 「リソース記述フレームワーク (RDF): 概念と抽象構文」www.w3.org 。 2018年10月24日閲覧。
- ^ 「消費者向け Web の競争ダイナミクス: 5 つのグラフが持続可能な優位性をもたらす」www.gartner.com 。2018年 10 月 23 日閲覧。
- ^ ab Codd, EF (1970-06-01). 「大規模共有データバンクのためのリレーショナルデータモデル」Communications of the ACM . 13 (6): 377–387. doi : 10.1145/362384.362685 . ISSN 0001-0782. S2CID 207549016.
- ^ 「グラフデータベース、第2版」。O'Reilly | Safari 。 2018年10月23日閲覧。
- ^ abcd 「リレーショナルデータベース からグラフデータベースへ」。Neo4j 。
- ^ ab 「グラフデータベースが輝く例: Neo4j 版」、ZeroTurnaround
- ^ 「Amazon Neptune Engine バージョン 1.4.0.0 (2024-11-06)」。Docs.AWS.Amazon.com。アマゾン ウェブ サービス。2024年11 月 9 日閲覧。
- ^ 「分析専用のインメモリ超並列分散グラフデータベース」CambridgeSemantics.com 。 2018年2月20日閲覧。
- ^ Rueter, John (2018 年 2 月 15 日). 「Cambridge Semantics が Amazon Neptune およびグラフ データベース向けの AnzoGraph グラフベース分析サポートを発表」. BusinessWire.com . 2018 年2 月 20 日閲覧。
- ^ Zane, Barry (2016 年 11 月 2 日)。「セマンティック グラフ データベース: リレーショナル データベースの価値ある後継者」。DBTA.com。データベースのトレンドとアプリケーション。2018年2 月 20 日閲覧。
- ^ 「Cambridge Semantics が Amazon Neptune およびグラフ データベース向けの AnzoGraph サポートを発表」。DBTA.com。データベースのトレンドとアプリケーション。2018 年 2 月 15 日。2018年 3 月 8 日閲覧。
- ^ Woodie, Alex (2016 年 6 月 21 日). 「Beyond Titan: the evolution of DataStax's new graph database」. Datanami.com . 2017 年5 月 9 日閲覧。
- ^ 「リリース 1.0.0 · JanusGraph/janusgraph」。GitHub.com 。 2023年10月21日。
- ^ 「JanusGraph ストレージ バックエンド」。docs.JanusGraph.org。2018年 10 月 2 日時点のオリジナルよりアーカイブ。2018年 10 月 1 日に取得。
- ^ 「JanusGraph インデックス ストレージ」。docs.JanusGraph.org。2018年 10 月 2 日時点のオリジナルよりアーカイブ。2018年 10 月 1 日閲覧。
- ^ 「SQL Server 2017 の新機能」。Docs.Microsoft.com。Microsoft Corp. 2017 年 4 月 19 日。2017 年5月 9 日に閲覧。
- ^ 「Nebula Graph がビッグデータ分析の発見にデビュー」Datanami.com 2020 年 6 月 29 日2020 年12 月 2 日閲覧。
- ^ 「リリースノート: Neo4j 5」。Neo4j.com。Neo4jグラフデータベースプラットフォーム。 2024年10月31日閲覧。
- ^ 「リリースノート」。Ontotext GraphDB。2024年11月9日。 2024年11月9日閲覧。
- ^ 「Virtuoso のクラスタリング展開アーキテクチャ図」。Virtuoso.OpenLinkSW.com。OpenLink Software。2017年5月 9 日閲覧。
- ^ Ewbank、Key。「RedisGraph が一般提供に到達」I-Programmer.info。
- ^ 「SAP HANA 2.0 SPS 05 の新機能」。blogs.SAP.com。2020 年 6 月 26 日。2020 年 6 月 26 日閲覧。
- ^ Rudolf, Michael; Paradies, Marcus; Bornhövd, Christof; Lehner, Wolfgang. SAP HANA データベースのグラフストーリー(PDF)。情報科学の講義ノート。
- ^ Vanian, Jonathan (2015年2月18日). 「NSA関連のSqrrlがサイバーセキュリティに注目し、700万ドルの資金調達」Gigaom.com . Gigaom . 2019年3月9日時点のオリジナルよりアーカイブ。 2017年5月9日閲覧。
- ^ Woodie, Alex (2015年10月23日). 「分析の芸術、または緑髪の人々が私たちに教えてくれること」. Datanami.com . 2017年5月9日閲覧。
- ^ 「GitHub Releases」。GitHub 。 2023年7月3日閲覧。
- ^ 「リリースノート : TigerGraph : Docs」. Docs.TigerGraph.com . TigerGraph . 2024年7月4日閲覧。
- ^ 「The Forrester Wave™: グラフデータプラットフォーム、2020年第4四半期」。AWS.Amazon.com。アマゾンウェブサービス。2020年11月16日。 2020年11月16日閲覧。
- ^ 「リリース TypeDB 2.14.0 · vaticle/typedb」。GitHub 。2022年11月25日閲覧。
- ^ Svensson, Johan (2016 年 7 月 5 日)。「ゲスト ビュー: リレーショナル データベースとグラフ データベース: どちらをいつ使用するか?」サンディエゴ タイムズ。BZ メディア。2016年8 月 30 日閲覧。
- ^ TinkerPop、Apache。「Apache TinkerPop」。Apache TinkerPop 。2016年11月2日閲覧。
