我需要每天导入一个包含昨天数据库快照的文件。要导入我在shell中使用以下命令:
./bin/hbase org.apache.hadoop.hbase.mapreduce.ImportTsv \
'-Dimporttsv.separator=|' \
-Dimporttsv.columns=HBASE_ROW_KEY,info:date,info:author,info:text \
tableName \
inputFile.tsv
问题是每行包含所有值而不仅仅是更新的值,因此每列有多个版本但具有相同的值。
还有其他方法可以导入此每日快照而忽略重复值吗?或者有任何建议可以解决这个问题吗?
谢谢!
答案 0 :(得分:0)
我想如果你真的想忽略现有的值,你需要编写自己的map / reduce而不是使用导入程序。
但是,多个版本有什么问题?首先,您可以设置版本hbase保留的数量(当您定义列族时),其次,当您阅读时,您可以只阅读最新版本,最后,如果您担心存储,您可以设置hbase使用压缩