当我使用下面的shell命令将数据批量加载到hbase时。
hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.columns=HBASE_ROW_KEY,cf1:val1,cf1:val2,cf1:val3 so_table /tmp/example/
我制作了一个文件并加载到hdfs中 /tmp/example/
. 每行的每一个成分都用空格隔开。我认为这个分隔符空格-所有的行看起来都像坏行。有没有办法用空格分隔符?
2条答案
按热度按时间piok6c0g1#
importtsv有两种用法。一种是普通的看跌期权,另一种是散装期权。你上面的命令是常规的。但在问题中,您指定它为批量加载。请选择正确的选项。
所以一旦决定了用途,就有了分离器部分。
'-Dimporttsv.separator=" "'
是如何使用分隔符的。默认为制表符分隔。在这里查看importtsv的正确用法50few1ms2#
使用
'-Dimporttsv.separator=" "'
.