为什么Neo4j比SQL快

时间:2012-04-08 01:16:05

标签: sql nosql neo4j

我是Neo4j的新手,并且不太明白为什么Neo4j必须比高效的SQL查询更快。是因为数据结构还是底层查询实现?如果有人能帮我解决问题,我真的很感激。

1 个答案:

答案 0 :(得分:10)

Neo4j通常不比SQL数据库快。在许多情况下,基于图形的问题更快。例如,如果你想找到两个实体之间的最短路径,Neo4j最有可能胜过MySQL等,因为数据结构的方式和你可以使用的算法因为这种结构。 Neo4j将其数据存储为这些节点之间的节点和关系。它们直接相连。简单的最短路径算法是广度优先搜索。您从一个节点开始并展开它的连接节点,然后为每个节点执行相同的操作,直到找到结束节点。这样您只需触摸少量数据。在SQL查询中,您无法轻松完成此操作,因此您必须在代码中构建一些内容,遍历结果集并为每个结果生成新查询,依此类推。所以你最终会得到很多疑问。