如果java mapreduce中使用了批量加载api,如何恢复数据?

72qzrwbm  于 2021-05-27  发布在  Hadoop
关注(0)|答案(1)|浏览(254)

在生产环境中,我们使用批量加载api将数据加载到hbase表中,方法是将两个参数传递给批量加载api(pathtohfile,targettablename)。
pathtohfile--->hadoop中hfiles的位置
targettablename--->要加载的目标表
当我们使用大容量加载api时,wal文件不会发生写操作。但是wal文件是用来恢复数据的。既然数据没有写入wal文件,那么在这种情况下,我们如何恢复数据呢?

qybjjes1

qybjjes11#

wal用于恢复未写入hfiles的更改(即从崩溃的memstore)。在批量加载中,您需要手动创建hfiles并将它们交给hbase。hbase中新文件的实际加载是原子的,因此这里不需要恢复机制。

相关问题