“图形数据库 – 转换 a–> RDBMS”
Neo4j 站点似乎暗示您可以在 RDBMS 中做的任何事情,都可以在 Neo4j 中做。
在选择 Neo4j 作为 RDBMS 的替代品之前,我需要回答一些疑问。
我对 Neo4j 感兴趣
- 能够快速修改数据“模式”
- 自然表达实体而不是关系和规范化的能力
- ...这导致了高度表达的代码(比 ORM 更好)
这是我对它的功能感兴趣的 NoSQL 解决方案,而不是高性能。
问题: Neo4j 是否存在任何可能使其不适合作为 RDBMS 替代品的问题?
我特别关心这些:
- 我必须在应用程序逻辑中实现任何数据库功能吗?(例如,您必须在应用层为一些 NoSQL DB 实现连接)
- 字段“索引”是否允许比 O(n) 更快的查找?
- 如何处理热备份和复制?
- “改变”模式或让具有不同版本模式的实体一起生活的任何问题?