Hive On Tez写通过Phoenix写Hbase时,报错:
aused by: org.apache.phoenix.execute.CommitException: org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Failed 10 actions: org.apache.hadoop.hbase.RegionTooBusyException: StoreTooBusy,1673417396340.7e890eda7bad66e304ce311bc81ca481.:0 Above parallelPutToStoreThreadLimit(10)
是因为表是联合主键,第一个字段出现了大量的重复,出现了数据倾斜。
将Hive On Tez改成Hive On MR来执行,并设置map数。
set hive.execution.engine=mr;
set mapred.map.tasks=1; 期望map数
set mapred.max.split.size=256000000000;
改成MapReduce的方式,花较长时间将数据写到了HBase。