2章つながりのあるデータを格納するための選択肢

私たちはつながりのある世界に住んでいます。繁栄し進歩するためには、私たちを取り巻くつながりの網を理解してそれに影響を与える必要があります。

現在の技術はつながりのあるデータの課題にどのように対処するのでしょうか。本章では、リレーショナルデータベースと集約NoSQLストアがグラフとつながりのあるデータをどのように管理するかを調べ、そのパフォーマンスをグラフデータベースと比較します。NoSQLのトピックをさらに深く知りたい読者のために、付録Aで4種類の主なNoSQLデータベースを説明しています。

2.1 リレーショナルデータベースには関係が欠如している

数十年にわたって、開発者はリレーショナルデータベースの内部でつながりのある半構造化データセットに対応しようとしてきました。しかし、リレーショナルデータベースが当初、紙の伝票や表構造を体系化するように設計されていた(そして、それを非常に得意にしている)一方で、実世界で出現するアドホックで例外的な関係をモデリングしようとすると苦労します。皮肉にも、リレーショナルデータベースは関係を扱うのが下手なのです。

関係はリレーショナルデータベースの用語の1つですが、表を結合する手段として存在するだけです。前章でのつながりのあるデータの議論では、多くの場合、エンティティをつなぐ関係の意味の曖昧さをなくし、重みや強さを特定する必要があることに触れました。リレーショナルの関係はそのようなことは何もしません。さらに悪いことに、異常データが増え、データセットの全体的構造が複雑になって均一でなくなるにつれ、リレーショナルモデルは大きな結合表、まばらな行、多くのNULLチェックロジックに苦しむことになります。リレーショナル領域ではつながりの増加は結合の増加となり、それがパフォーマンスを妨げ、ビジネスニーズの変化に対応して既存データベースを進化させるのが難しくなります。 ...

Get グラフデータベース ―Neo4jによるグラフデータモデルとグラフデータベース入門 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.