【发布时间】:2011-07-17 15:24:23
【问题描述】:
我知道数据库通常可以使用master/slave replication 进行水平扩展。当并发读取数不断增长时,这是一个很好的策略。
随着并发写入的数量或只是数据量开始增长,但是,主/从复制没有得到你什么都可以,所以你需要对你的数据进行分区。
这非常适用于键值场景。对我来说一个经典的例子是 TinyURL/bit.ly;短网址foo的读/写数据可以完全独立于短网址bar的读/写数据。
但是,如果您处于图形场景中,您应该怎么做?更具体地说,是否可以对像 Neo4j 这样的图形数据库进行分区?如果有,怎么做?
我无法理解如何在不违背使用图形数据库的目的(高效遍历)的情况下分解图形。
【问题讨论】:
-
看看 Jim Webber 写的关于该主题的文章:On Sharding Graph Databases 和 Scaling Neo4j with Cache Sharding and Neo4j HA!
标签: database-design scalability graph-databases