【问题标题】:How do we set TTL for cell in Load Data to HBase Table using completebulkload我们如何使用 completebulkload 为将数据加载到 HBase 表中的单元格设置 TTL
【发布时间】:2020-07-01 12:44:17
【问题描述】:

我有一个用例,我需要使用批量导入数据到 HBase。 我正在关注此链接-> http://hbase.apache.org/book.html#completebulkload 从官方网站看,一切正常,但设置 TTL 选项不是很清楚,以前有人用过吗?

Mapreduce 工具 hbase org.apache.hadoop.hbase.mapreduce.ImportTsv

【问题讨论】:

    标签: mapreduce hdfs hbase


    【解决方案1】:

    您在创建 hbase 表时提供 ttl 选项以自动删除旧 ttl 行。
    如果在创建表时设置此选项,则可以使用 importtsv 命令中的-Dimporttsv.timestamp=currentTimeAsLong - use the specified timestamp for the import 选项。

    【讨论】:

    • 我之前试过了,但是在 TTL 过期后记录没有被删除。示例 -Dimporttsv.timestamp=000300 因为此功能需要修复 6 个长度值,因此必须在开头添加额外的“000”,但它永远不会过期(应该删除单元格)
    • 另外,-Dimporttsv.timestamp=currentTimeAsLong 这个是插入时间戳而不是 ttl。对于 ttl,其 HBASE_CELL_TTL 作为使用 bulkload jar 时要传递的参数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多