行上的TTL和HBase中的事件fireoff

时间:2016-12-13 23:03:41

标签: hbase

我想知道HBase(或任何simialr DB)中是否有任何功能可以设置每行的TTL,然后HBase给我一个事件(用java编写)来写一些行到期时的程序?

1 个答案:

答案 0 :(得分:2)

HBase有机会实施自定义TTL策略。您需要为以下挂钩创建自己的Region Observer协处理器:

  • preFlushScannerOpen - 在扫描程序迭代之前调用 正在刷新的MemStore已创建
  • preCompactScannerOpen - 调用 在扫描程序迭代所有要压缩的StoreFiles之前 创建
  • preStoreScannerOpen - 在用户启动的扫描之前调用 开始

在博文Pluggable compaction and scanning policies中查看更多详情。但要小心并确保您的修改仅影响所选表,在另一种情况下,您可以破坏元表,因此可以破坏HBase集群。