【问题标题】:Does HBase support ACID just as Hive does?HBase 是否像 Hive 一样支持 ACID?
【发布时间】:2020-11-05 11:04:15
【问题描述】:

正如https://cwiki.apache.org/confluence/display/Hive/Hive+Transactions 所说,Hive 支持一些有限的 ACID 事务。所以,如果我只需要行级事务,Hive 就足够了吗? HBase的优势是不是越来越少了?

谢谢。

【问题讨论】:

    标签: hive transactions hbase acid


    【解决方案1】:

    可以在 HBase 中使用Apache Phoenix 进行 ACID 事务,这是 HBase 的一个层,它提供用于处理数据的 SQL 接口。

    要使用事务,安装 Phoenix 后,您在 hbase-site.xml 中将属性 phoenix.transactions.enabled 设置为 true,然后在创建表时使用 TRANSACTIONAL 选项。例如:

    CREATE TABLE my_table (id INTEGER PRIMARY KEY, val VARCHAR) TRANSACTIONAL=true;
    

    接下来,您只需通过 JDBC 或其他接口与 SQL 进行正常交互即可。 (请注意,您还可以将现有的非事务表更改为事务表。)

    有关更多信息,您可以在项目网站上阅读有关 Phoenix 及其事务支持的信息:

    https://phoenix.apache.org/transactions.html

    【讨论】:

      猜你喜欢
      • 2023-03-31
      • 1970-01-01
      • 2019-03-07
      • 2013-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-25
      • 1970-01-01
      相关资源
      最近更新 更多