我是任何类型的DB的新手.看来,您可以以图形形式表示任何关系数据库(尽管它可能是一个非常平坦的图表),也可以在关系数据库中使用任何图表数据库(具有足够的表格).
图形可以通过从一个条目到另一个条目的硬链接来避免在其他表中的大量查找,因此在许多/大多数情况下,我可以看到图形的速度优势.如果你的数据是自然的层次结构,特别是如果它形成一个树,我会看到逻辑/推理的优势,关系关系图.我想象一个链接到其他节点的图的节点可能包含多个地图或列表…,它在图的节点内有效地包含关系数据库.
图db与关系数据库有什么不利吗? (注意:我不是在实现中寻找缺少功能的东西,而是理论上的利弊)
什么时候我还应该使用关系数据库?即使我在逻辑上有一个int的int映射,我可以在一个图中做到.
解决方法
大约20到30年前,图形数据库已被关系技术所淘汰.
主要的理论缺点是图形数据库使用两个基本概念来表示信息(节点和边),而关系数据库只使用一个(关系).这种情况会渗透到数据操作的语言中,因为基于图形的语言必须提供两组不同的操作符:一组用于在节点上运行,一组用于在边缘上操作.关系模型只能有一个.
更多的操作符意味着更多的操作符为DBMS构建器实施,更多的错误机会,对于用户来说,这意味着更多的不同的语言结构来学习.例如,向数据库添加信息只是关系中的INSERT,在基于图形的情况下,它可以是STORE(节点)或CONNECT(边缘).删除信息只是DELETE(关系),而不是ERASE(节点)或DISCONNECT(边缘).