首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >hbase、结构相同的多个表还是包含大量数据的单个表的性能更有效?

hbase、结构相同的多个表还是包含大量数据的单个表的性能更有效?
EN

Stack Overflow用户
提问于 2017-08-31 15:15:00
回答 1查看 439关注 0票数 2

我之前创建了一个在RDMS中存储特定实体的每日数据的项目,方法是为每天创建一个表,而不是在这个表中存储当天的数据。

但是现在我想把我的数据库从RDMS转移到HBase。因此,我的问题是,我是否应该创建一个单一的表,并将所有日子的数据存储在该表中,还是应该使用我先前的概念,即为每天创建一个单独的表,我想根据hbase的性能来比较这两种情况。

抱歉,如果你觉得这个问题很愚蠢的话

EN

Stack Overflow用户

回答已采纳

发布于 2017-09-01 20:05:25

正如您所提到的,有两个选项

备选方案1:所有天数数据的单一表 备选案文2:多个表

如果您有一天的大量数据,我更喜欢有选项2的名称空间(在0.96版本中介绍的是一个非常重要的特性)。这也将支持多租赁要求..。

请参阅Hbase书

  • 命名空间是类似于关系数据库系统中数据库的表的逻辑分组。这种抽象为即将到来的与多租户相关的特性:配额管理(HBASE-8410)奠定了基础。
  • 限制名称空间可以消耗的资源数量(即区域、表)。
  • 名称空间安全管理(HBASE-9206) -为租户提供另一级别的安全管理。
  • 区域服务器组(HBASE-6721) -一个名称空间/表可以固定在- RegionServers的子集上,从而保证了一个课程级别的隔离。

下面是命令w.r.t。命名空间

alter_namespace,create_namespace,describe_namespace,drop_namespace,list_namespace,list_namespace_tables

优势:

  • 即使您使用列筛选器,因为它的数据较少(每天的数据),与单表方法相比,全表扫描的数据检索速度将更快(大表上的全扫描成本很高)。
  • 如果您想要对特定的表进行身份验证和授权,那么它也可以实现。

限制:您将使用多个脚本来管理表,而不是单个脚本(选项1)

注意:在上面提到的任何选项中,您的行键设计对于更好的性能和防止热点是非常重要的。

有关更多详细信息,请参阅hbase系列

票数 3
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45984860

复制
相关文章

相似问题

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