首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hbase与分布式前缀树

Hbase与分布式前缀树
EN

Stack Overflow用户
提问于 2014-01-23 05:40:40
回答 2查看 492关注 0票数 0

我想在许多机器中表示和存储大量的序列作为前缀树,如下所示:+一个主机器将表示序列的前缀。+n个从机将表示n个子前缀树,每个树包含其余的序列。

我想知道我能不能用Hbase来解决我的问题?你能和我分享一下这方面的经验吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-24 09:17:17

也许你的“大师”的概念和HMaster不完全一样。HMaster用于管理目的,例如识别给定表的一组行的哪个RegionServer包含该区域。

行中的所有数据--表中的任何--都将位于RegionServer中。向RegionServers /从RegionServers中读取/写入数据是在不与HMaster进行任何交互的情况下完成的,除非确定行位于哪个服务器上。

回到“主”和“从”机器拓扑:您可能决定将序列前缀存储为单独的表。然后,前缀的RegionServers可以与子前缀树分开管理。在任何情况下,都没有存储数据的“单一主计算机”,而是在一个或多个RegionServers上存储一个或多个区域。

票数 1
EN

Stack Overflow用户

发布于 2014-01-25 08:57:28

HBase表按行键进行字典排序。因此,在您的场景中,在HBase中存储密钥的自然方式是,子树将立即跟随每个前缀,也就是说,子树很可能位于父树所在的同一区域(因为它们共享相同的前缀)。

如果对您来说非常重要的是,您将有一个节点来保存主节点和其他保存其余部分的节点,那么您将需要在分区键、平衡区域等方面努力工作。正如Javadba所说,在HBase中,可能的解决方案是将概念分离到单独的表中,如果您想确保它们不共享机器,则仍然需要进行平衡工作。

如果确切的物理架构对您来说不太重要,而您真正想要的是存储效率--您可能需要查看图形数据库,例如泰坦,它建立在HBase (或Cassandra)、Neo4J等基础上。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21300264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档