Hbase memstore手动刷新

She*_*jie 4 hadoop hbase hdfs

根据Hbase设计,Hbase使用memstore存储写入,最终当memstore达到大小限制时,它会将其刷新到HDFS.这个冲洗练习是在主题背后自动发生的.

在我的情况下,我想进行hdfs迁移,从一个集群迁移到另一个集群,我需要确保在我在源集群中关闭hbase进程之前没有任何内存留在内存中.无论如何我们可以手动强制刷新即使memstore没有达到限制.

==问题添加==

进一步的问题:你怎么知道冲洗完成了?通过指标?

小智 10

你可以从shell中做到:刷新'tableName'来刷新memstore.

但是如果你想通过hdfs备份/ hbase/table文件夹,那么这样做的方法是: - 禁用表:(来自shell:禁用'tableName') - 复制文件:hadoop fs -cp/hbase/tableName/hbase-backup/tableName - 启用表:(来自shell:enable'tableName')

或者您可以使用CopyTable或导出工具(http://hbase.apache.org/book/ops.backup.html)