2012-02-18 73 views
3

我正在开始一个新项目,虽然我习惯于MySQL,但我担心效率问题。我愿意接受其他选择,图形数据库听起来很有趣。我应该使用Neo4j来寻找类似用户还是坚持使用类似MySQL的东西?

我将需要根据位置和评分类似值来查找类似的用户。在MySQL中,我可能必须根据位置和这些值的距离(可能为欧几里得距离)跨越2多对多关系和顺序。像这样的东西似乎很慢。

我还需要做一些事情,比如找到10个文本以子字符串开头并具有最大连接数(这是我猜测的自动完成)的节点。

Neo4j或其他图形数据库能够轻松高效地完成此操作吗?

回答

4

是的,Neo4J肯定比MySQL更合适。我自己用它来进行相似性搜索,并继续这样做。查看CypherGremlin,具体取决于您的标准是多么复杂 - 再加上内置的Lucene索引,这非常棒。什么,你可能试图实现

例子:http://docs.neo4j.org/chunked/stable/data-modeling-examples.html

+1

我也发现[此博客页面(http://blog.neo4j.org/2012/02/webinar-follow-up-intro-to -graph.html),其中列出了neo4j非常适合的一些应用程序。 现在我只需要决定一个Web框架,也许如果我应该使用orientdb而不是neo4j。 – user1217646 2012-02-22 03:39:53

+0

太棒了,我对图表数据库进行了两次完整的评估 - 一次是在2010年,一次是在去年年底为两家不同的公司进行的。在这两种情况下,Neo4j都是赢家。 – Luanne 2012-02-22 04:09:25

+1

hm ...我实际上是在用Orientfony 2.0思考OrientDB。 OrientDB的许可证更加开放,我无法在PHP中找到与Neo4j一样多的内容。谢谢(对不起,切线) – user1217646 2012-02-22 18:51:27

相关问题