在HBase中,当max version参数设置时,它究竟做了什么?

时间:2016-01-12 07:48:11

标签: hbase hbasetestingutility

我正在处理内存中的模拟HTable。我将HTable与迷你集群的HTable进行了比较。 Mini-cluster是用于HBase应用程序测试的东西,我在这里使用它来获得一些标准结果。在迷你集群中,有一个

HBaseTestingUtility.createTable(byte[] tableName, byte[] family, int numVersions)

API。当numVersions设置时,

HTable.get(Get)

将返回最多numVersions版本的结果,即使Get中的maxVersion参数设置为大于numVersions。如果参数未设置,则默认值为1.但在其他测试中,我发现实际上,当numVersions为1时,会保存很多版本。所以我想知道当发生时会发生什么numVersions设置完全正确。

1 个答案:

答案 0 :(得分:0)

'numVersions'设置主要压缩后最多保留的行数。换句话说,可以保存更多版本的行,但是会安排这些版本进行清理。那些行仍然存在,但可能无法读取,因为这会产生不可靠的行为。