tôi có các tình huống sau trong trường hợp HBase tôiHBase nhận được tất cả các giá trị ghi lại ngày tháng cho một tế bào
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
Bây giờ nếu bạn sẽ thấy, hai chèn cuối cùng là dành cho các gia đình cùng một cột, cùng cột và cùng quan trọng. Nhưng nếu tôi hiểu đúng cơ sở cf: c + row3 đại diện cho một ô sẽ có tất cả các phiên bản được đặt thời gian của giá trị được chèn vào.
Nhưng đơn giản trở lại quét chỉ có giá trị gần đây
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
Làm thế nào để tôi nhận được tất cả các giá trị ghi lại ngày tháng cho một ô, hoặc làm thế nào để thực hiện phạm vi thời gian dựa truy vấn?
Không phải là trường hợp ở đây, nhưng bạn cũng nên đảm bảo Bảng hỗ trợ nhiều phiên bản, tức là đưa ra tham số phiên bản CF. – Tony
thực sự, bạn đúng @Tony. tạo bảng với: "tạo" kiểm tra ", {NAME => 'cf', VERSIONS => N}" (mặc định là 3) sẽ là một phương pháp hay. Và các phiên bản áp dụng cho các gia đình cột không phải bảng, bạn nên cung cấp phiên bản cho mỗi họ cột đơn trong bảng. – frail
Tôi tự hỏi nếu có cách nào để nói 'quét' để truy xuất tất cả các phiên bản hiện có, thay vì đặt ngưỡng –