我在一个简单的crud过程中测试了neo4j和mysql的性能,我仍然想知道为什么neo4j需要比在mysql上花费更长的时间。在select过程中我也会遇到相同的结果,其中neo4j比mysql花费的时间更长。我想知道我是不是做得不好。
- - - - - - - - Neo4j的
profile match (n:User{name:"kenlz"}) set n.updated = "2016-04-18 10:00:00" using index n:User(name)
特定用户的总更新时间(找到3条记录):3139毫秒
profile match (n:User{enabled:1}) set n.updated = "2016-04-18 10:00:00" using index n:User(name)
任何用户的总更新时间限制为1116961:27563毫秒
- - - - - - - - MySQL的
update tbl_usr set updated = now() where name = 'kenlz';
特定用户的总更新时间(找到3条记录):1170毫秒
update tbl_usr set updated = now() where enabled = 1;
任何用户的总更新时间限制为1116961:5579毫秒
答案 0 :(得分:0)
您的操作看起来很合理。
但请注意像neo4j这样的图形数据库的功能随着数据的位置而增加。即所谓的graph-traversals(例如,访问路径上的连续边和节点),这在像mysql这样的关系dbms中执行得非常糟糕。