bulk-load:不导入重复值

时间:2012-08-17 14:57:59

标签: import hbase bulk-load

我需要每天导入一个包含昨天数据库快照的文件。要导入我在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

问题是每行包含所有值而不仅仅是更新的值,因此每列有多个版本但具有相同的值。

还有其他方法可以导入此每日快照而忽略重复值吗?或者有任何建议可以解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我想如果你真的想忽略现有的值,你需要编写自己的map / reduce而不是使用导入程序。

但是,多个版本有什么问题?首先,您可以设置版本hbase保留的数量(当您定义列族时),其次,当您阅读时,您可以只阅读最新版本,最后,如果您担心存储,您可以设置hbase使用压缩