【问题标题】:Is there any concept of auto commit in hbase?hbase中是否有任何自动提交的概念?
【发布时间】:2016-12-06 07:43:47
【问题描述】:

我是 hbase 新手,想了解更多。我只是想知道 HBASE 中是否有任何自动提交概念?

【问题讨论】:

    标签: apache hadoop hbase bigdata


    【解决方案1】:

    HBase documentation 它不是一个符合 ACID 的数据库。但是,它确实保证了某些特定属性。 本规范列举了 HBase 的 ACID 属性。

    它们是HBase中AutoFlush的概念,类似于autocommit。

    如果您使用Apache Phoenix 来获取或更新HBase 中的数据,那么您可以将属性phoenix.connection.autoCommit 设置为true,默认为false。

    【讨论】:

      【解决方案2】:

      提交主要出现在两个地方:插入/更新(放入 HBase)和删除(在 HBase 中删除)

      由于我们处于大数据环境中,当您摄取大量数据时,要求会有所不同。

      如文档中所述,autoCommit 应设置为 false - 以获得更好的性能,而不是单独维护每条记录。它通常有助于处理缓冲区并在 HBase 的区域服务器上加载。

      删除

      HBase 不会就地修改数据,因此删除是通过创建称为墓碑的新标记来处理的。这些墓碑,连同死值,在主要的compactions上被清理了

      关于 Phoenix 的最后一句话,HBase 之上的任何层最终都将基于 HBase 架构工作。希望这对您的设计有所帮助

      【讨论】:

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