我是Neo4j的新手,不太明白为什么Neo4j必须比高效的SQL查询快。是因为数据结构还是底层查询实现?如果有人能帮我解决这个问题,我真的很感激。
发布于 2012-04-08 09:57:20
Neo4j通常不比SQL数据库快。在许多情况下,它只是对基于图的问题更快。例如,如果您想要找到两个实体之间的最短路径,由于数据的结构化方式和您可以使用的算法,由于这种结构,Neo4j很可能优于MySQL等。Neo4j将其数据存储为节点以及这些节点之间的关系。它们是直接相连的。一种简单的最短路径算法是广度优先搜索。您从一个节点开始并展开它的连接节点,然后对它的每个子节点执行相同的操作,直到找到结束节点。这样,您只会接触到少量的数据。在SQL查询中很难做到这一点,所以必须在代码中构建一些东西,遍历结果集并为每个结果生成新的查询,等等。所以你最终会有很多的查询。
https://stackoverflow.com/questions/10059664
复制相似问题