【问题标题】:Sync Data From Hbase To Hive将数据从 Hbase 同步到 Hive
【发布时间】:2019-07-10 12:44:19
【问题描述】:

我们正在开发一个使用 HBase 作为操作数据存储的项目;所有数据都实时进入 hbase。并且,每隔 2 小时,需要将 Hbase 中的数据同步到 Hive。这是为了使分析查询能够在最新数据之上运行。

用于将数据从 Hbase 同步到 Hive:

对于仅插入/更新的场景,我可以使用 hbase 提供的时间戳列来了解插入/更新的记录。 对于“删除”场景,我正在努力寻找正确的方法。

HBase Scan API 是否提供任何选项来做到这一点?

或者我应该使用 Apache Phoenix 之类的任何 SQL 选项来做同样的事情吗?

【问题讨论】:

  • 可以从Hive中查询Hbase...
  • 我希望您了解 Hive+HBase 表,但根据我的经验,它不适合分析用例(性能方面)

标签: hadoop hive hbase


【解决方案1】:

这是来自 HBase 参考指南,Keep Deleted Cells 部分的答案:

一个新的“原始”扫描选项返回所有已删除的行和删除 标记...

. . .[例子]

hbase(main):017:0> 扫描 'test', {RAW=>true, VERSIONS=>1000}

行列+单元格
r1 列=e:c1,时间戳=14,值=值
r1 列=e:c1,时间戳=12,值=值
r1 列=e:c1,时间戳=11,type=DeleteColumn
r1 列=e:c1,时间戳=10,值=值

0.0120 秒内 1 行

。 . .

请注意,可能有不同的类型标记 -- DeleteColumnDeleteFamily -- 取决于所发生的 DELETE 类型。

【讨论】:

  • 很高兴听到 HBase 即使在压缩之后也会维护行 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-01
  • 1970-01-01
相关资源
最近更新 更多