天天看点

impala、hive、phoenix、hbase映射测试

**需求:想在phoenix上维护两张宽表,一张作为即席查询使用,只有一天的数据、一张作为历史表。

宽表的特点是:由多个表组合而成,但是每张表的到数时间不一致,有的表先到,有的表可能隔天才到。

想要达到的效果:即席查询用的宽表是来一张表就加载一张表的数据,没来的等来了再加载,中间过程有查询的时候,查询结果是:已经更新的字段(已经到数的表字段)和未更新的字段(没有到数的表字段)

要求:即席查询的宽表中的数据,既要在impala、hive中可查,也要在phoenix、habse中可查。

**

目前方案:

假设:宽表由2张表组成:table1和table2

1)每张小表(组成宽表的每张表)先通过调度加载到hive里面

ods.table1(partition=‘202108010’)、ods.table2(partition=‘202108010’)

2)在hive里面创建每张小表与phoenix的映射表(表结构与第一步的表结构一致)

目的:为了能够在phoenix中操作hive中的表数据,因为宽表中插入数据的时候要用phoenix,而不用hive,因为hive如果只插入某几个字段的时候,其他的字段会为null,而需求是更新表字段,没有到数的字段,保持原貌。

hive>: