2

我想构建一个跨越多节点
计算机网络(Linux PC 的内部子网)的 B+树,用于
弹性海量存储。范围扫描很重要。

这基本上是
分布式数据库系统的底层数据结构吗?(卡桑德拉,HBase)

有没有关于分布式 B+Trees 的研究?我在http://www.cs.yale.edu/homes/aspnes/papers/opodis2005-b-trees-final.pdf
看到了这篇文章, 但是跳过 BTrees 只是取出有故障的节点(所以会有数据丢失)

我对具有内置冗余的 B+Trees 特别感兴趣
(即,如果主机发生故障并且它托管的所有节点都处于脱机状态,
我希望另一台复制的主机成为主节点
服务器并取代故障主机)

我不想使用一组数据库实例(1 个节点,一个数据库),因为分片 对于大规模存储系统(跨商品 x86、x64 硬件和 FOSS OS)
来说不是一个好的选择。

我在重新发明轮子吗?
我应该只使用 Cassandra 还是 HBase?

4

1 回答 1

1

Cassandra 支持范围查询。

当您打开机器时,Google 的Big Table会自动将新机器添加到集群中。它非常有弹性,很容易添加更多机器。不幸的是,它的速度有一个缺点:查询非常严格。你可以做一些范围查询。有关列表和更多详细信息,请参阅本文:http: //geothought.blogspot.com/2009/04/google-app-engine-and-bigtable-very.html

数据如何存储在大表中的一个很好的例子:http: //jimbojw.com/wiki/index.php ?title=Understanding_Hbase_and_BigTable

一篇不错的堆栈溢出帖子: 在 bigtable 导数中存储大量有序时间序列数据

于 2011-12-17T02:12:13.297 回答