У меня есть следующий сценарий в моем экземпляре hbase
hbase(main):002:0> create 'test', 'cf'
0 row(s) in 1.4690 seconds
hbase(main):003:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.1480 seconds
hbase(main):004:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0070 seconds
hbase(main):005:0> put 'test', 'row3', 'cf:c', 'value3'
0 row(s) in 0.0120 seconds
hbase(main):006:0> put 'test', 'row3', 'cf:c', 'value4'
0 row(s) in 0.0070 seconds
Теперь, если вы увидите, последние две вставки предназначены для одного и того же семейства столбцов, одного и того же столбца и того же ключа. Но если я правильно понимаю hbase, cf: c + row3 представляет ячейку, которая будет иметь все временные версии вставленного значения.
Но простое сканирование возвращает только последнее значение
hbase(main):010:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1317945279379, value=value1
row2 column=cf:b, timestamp=1317945285731, value=value2
row3 column=cf:c, timestamp=1317945301466, value=value4
3 row(s) in 0.0250 seconds
Как получить все временные значения для ячейки или как выполнить запрос на основе диапазона времени?