我有一个日志文件,记录与此相似

11,xxx ,dav,300000,mumbai
12,YYY ,IIT,800000,bang

当我使用导入tsv将其导入到hbase时
ImportTsv -Dimporttsv.separator=,
-Dimporttsv.columns="HBASE_ROW_KEY,id,name,school,sal,place"
table_name <file_loc>

结果:
hbase> scan table_name
11                        column=cf:id, timestamp=1501438942080, value=xxx
11                        column=cf:name, timestamp=1501438942080, value=dav
11                        column=cf:sal, timestamp=1501438942080, value=mumbai
11                        column=cf:school, timestamp=1501438942080,value=300000
12                        column=cf:id, timestamp=1501438942080, value= yyy
12                        column=cf:name, timestamp=1501438942080, value=IIT

由于现在HBASE的值ID为ROW,所以column:id分配了错误的值xxx ..等等,在接下来的列中,如何(自动生成HBASE_ROW_KEY)使我的列不被覆盖?我该如何解决这个问题。

最佳答案

截至目前,尚无根据列值创建复合行键的规定。可能是您已经预处理了TSV文件并创建了复合键,然后使用新创建的复合键作为rowKey将其加载到HBase。

检查为相同的https://issues.apache.org/jira/plugins/servlet/mobile#issue/HBASE-5339引发的JIRA

09-11 03:19
查看更多