【问题标题】:Preserving Data Locality in Accumulo在 Accumulo 中保留数据局部性
【发布时间】:2016-04-05 21:44:35
【问题描述】:

最近我一直在观察我的 Accumulo 集群上的数据本地化,我注意到它似乎随着时间的推移而恶化。我的直觉告诉我,这是由于 master 重新分配了 tablet 以帮助平衡集群,特别是在我完成滚动重启之后。

我正在考虑设置手动主要压缩以在夜间对我的所有表运行,以使该数据局部性尽可能接近 100%。这是你们以前做过的事情还是有更好的方法来处理这个问题?

【问题讨论】:

    标签: accumulo


    【解决方案1】:

    只要您继续将更多数据写入 Accumulo,您就会获得“不是 100%”的位置测量结果。随着您写入更多数据,您将导致平板电脑分裂:一个平板电脑变成两个。通常,在拆分后,其中一个孩子将被移动到另一台服务器,因为它会使 Accumulo 试图维护的平板电脑的分布无效。在拆分的子平板电脑本身自动进行主要压缩之前,您将没有任何位置。这实际上是 Accumulo 可以在平衡平板电脑方面做出更明智的决策的领域,有利于 HDFS 本​​地化,而不仅仅是在平板电脑服务器上分布平板电脑(但这将是一项重大努力)。

    对于您的情况,考虑在一夜之间(或在您的“非高峰”时间)对 cron 运行主要压缩当然不是荒谬的。我们甚至可以做一些聪明的事情,并创建一个工具来判断一个表的所有平板电脑的位置,并实际修剪低于某个位置阈值(例如

    如果您有兴趣,请随时订阅并发送消息至 user@accumulo.apache.org;我很乐意在那里提供更详细的帮助。

    【讨论】:

      猜你喜欢
      • 2018-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多