[解決済み] リレーショナルデータベースとグラフデータベースの比較
2022-09-25 04:14:46
質問
MySQLのような関係データベースと、Neo4jのようなグラフデータベースの長所と短所を説明してもらえますか?
SQLでは、様々なIDでリンクされた複数のテーブルを持っています。そして、テーブルを接続するために結合する必要があります。初心者の観点からすると、グラフデータベースのように最初から接続をエッジとして明示するのではなく、なぜ結合を必要とするようにデータベースを設計するのでしょうか。初心者は概念的に理解できないでしょう。おそらく、非常に技術的な、しかし概念的ではない理由があるのでしょう。
どのように解決するのですか?
実は、どちらのスタイルにも概念的な理由があるのです。 ウィキペディアの 関係モデル と グラフデータベース はこれに関する良い概要を提供しています。
主な違いは、グラフデータベースでは、関係が個々のレコードレベルで保存されるのに対し、リレーショナルデータベースでは、構造がより高いレベル(テーブル定義)で定義されることです。
これは重要な意味を持ちます。
- リレーショナル データベースは、膨大な数のレコードを操作するときに、より高速になります。 のレコードを操作する場合、リレーショナルデータベースははるかに高速です。 グラフデータベースでは、問い合わせの際に各レコードを個別に調査して グラフデータベースでは、問い合わせの際に各レコードを個別に調査し、データの構造を決定する必要がある。 グラフデータベースでは、データの構造を決定するために、問い合わせの際に各レコードを個別に調べる必要があるが、リレーショナルデータベースでは事前に分かっている。
- リレーショナルデータベースでは、すべての関係を保存する必要がないため、ストレージスペースが少なくて済みます。 を保存する必要がないためです。
そうでなければ、同じものを何度も複製することになります。 つまり、グラフデータベースは、不規則で複雑な構造に適しているのです。 しかし、現実の世界では、ほとんどのデータベースは規則的で比較的単純な構造を必要とします。 そのため、リレーショナルデータベースが主流となっています。
関連
-
windows mysql prompt access denied for user ''@'localhost' to database.
-
[解決済み] データベースのインデックス作成はどのように行われるのですか?[クローズド]
-
[解決済み] UNIONとUNION ALLの違いは何ですか?
-
[解決済み] SQL ServerでJOINを使用してUPDATE文を実行するにはどうすればよいですか?
-
[解決済み] JOINとINNER JOINの違いについて
-
[解決済み] INNER JOINよりもCROSS APPLYを使用すべきなのはどのような場合ですか?
-
[解決済み] SQLの複数列の順序付け
-
[解決済み] NOT IN vs NOT EXISTS
-
[解決済み] DISTINCTでCOUNT(*)を選択する
-
[解決済み】「INNER JOIN」と「OUTER JOIN」の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
SQLラーニングノート--オペランドには1つのカラムが必要です。
-
[解決済み] SQLサーバーでNULL = NULLがfalseに評価される理由
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] テーブルネーミングのジレンマ:単数形と複数形の名前【非公開
-
[解決済み] T-SQLでnot equalには!=と<>のどちらを使うべきですか?
-
[解決済み] SQLの複数列の順序付け
-
[解決済み] SQL ServerにおけるINSERT OR UPDATEに関する解決策
-
[解決済み] SQLでランダムな行を要求する方法は?
-
[解決済み] "ON UPDATE CASCADE "を使用する場合について
-
[解決済み] SQLサーバーで行を列に効率的に変換する