验证HBase快照是否限制了所有数据

时间:2016-07-06 18:16:46

标签: hbase snapshot cloudera-cdh

在HBase中创建快照时,我收到一条错误,说明"快照' snapshot_name'没有在预期时间内完成:60000毫秒。

然而,当我然后列出我当前的快照时,我发现返回错误的快照实际上是在预期的时间内完成的。

如何将该快照与源表(我正在拍摄快照的表)进行比较,以验证它是否创建了源表的完整快照?

1 个答案:

答案 0 :(得分:1)

错误意味着快照流程花费的时间比预期的要长,相关代码位于HbaseAdmin.snapshot

if (!done.getDone()) {
  throw new SnapshotCreationException("Snapshot '" + snapshot.getName()
      + "' wasn't completed in expectedTime:" + max + " ms", snapshot);
}

但是请求被发送到服务器并且快照过程已经开始。如果要检查快照的说明,可以在webUI上查看,如:

http://your-hmaster:60010/snapshot.jsp?name=your-snapshot-name

如果要比较数据,可以先将快照克隆到另一个表,然后运行map-reduce作业进行比较。