3.1.1 关系型数据库与图数据库的对比
关系型数据库与图数据库的对比
本页探讨关系型与图式数据库在存储结构及数据模型上的本质差异。若需了解查询语言的对比,请参阅《Cypher®与SQL比较指南》。
关系型数据库概述
关系型数据库以高度规范化的表格存储数据,这些表格预设了特定信息类型的列和行。由于其组织结构的刚性约束,关系型数据库要求开发者和应用程序必须严格规划数据的结构规范。
在该类数据库中,通过外键列引用主键属性来实现对其它行和表的关联。连接操作需要在查询时通过匹配相关表中所有行的主外键来动态计算,这种计算密集且内存占用量大的操作会产生指数级成本。
当数据模型中存在多对多关系时,必须引入用于存储参与表外键的连接表(或称关联实体表),这将进一步加剧连接操作的开销:
该图表展示了通过创建Dpt_Members连接表来关联员工表(Employee)与部门表(Departments)的概念。这个连接表包含两列:一列存储员工ID,另一列存储对应的部门ID。
这种结构使得理解数据关联变得繁琐,因为必须同时掌握员工ID和部门ID的具体数值(需要通过额外查询才能获取),才能确定员工与部门的对应关系。
此外,这类高成本的JOIN操作通常需要通过反规范化数据来减少必要的表连接次数,但这会破坏关系数据库的数据完整性。而图数据库则提供了其他建立数据连接的方式。