Graph / RDBMS混合?

时间:2013-03-19 15:02:10

标签: mysql ruby-on-rails-3 neo4j

您对使用Neo4j和传统的RDBMS(如mysql)有什么看法?

我想知道在Neo中保持关系/连接等以及在mysql中的消息/电子邮件和安全性是一种合理的设计。

这会提供两全其美吗? Neo会针对关系和针对消息传递优化的mysql进行优化吗?对每个人施加一点压力 - 也允许在消息和安全方面进行分片等。还允许Neo4j的较小备份窗口,据我所知,必须离线才能进行..

您对这样的系统有什么优缺点?

1 个答案:

答案 0 :(得分:0)

这不仅是一种非常合理的方法,而且完全支持并记录在Good Relationships指南中(如果您通过Spring使用Neo4j和MySQL)。

http://static.springsource.org/spring-data/data-graph/snapshot-site/reference/html/#reference:cross-store

这肯定会增加您的域模型的复杂性,如果您需要在同一事务中对两个数据存储执行更新,则需要考虑跨存储事务处理。

除了分片/水平缩放(这是我听到Neo Tech正在研究的东西)之外,如果你需要在一个大的上运行任何迭代操作(例如SUM,COUNT,AVERAGE之类的聚合),RDBMS会表现得更好表格集。

相关: Neo4j performance on a fixed column table vs database performance