Can you make use of SingleColumnValueFilter.  In this you can specify whether 
the condition to be checked only on the latest version or not.
SCVF#setLatestVersionOnly ( true)

-Anoop-
________________________________________
From: Li, Min [m...@microstrategy.com]
Sent: Friday, January 18, 2013 11:47 AM
To: user@hbase.apache.org
Subject: ValueFilter and VERSIONS

Hi all,

As you know, ValueFilter will filter data from all versions, so I create a 
table and indicate it has only 1 version. However, the old version record still 
can be gotten by ValueFilter? Does anyone know how to create a table with only 
one version record?

BTW, I am using hbase 0.92.1. Following is my testing commands:


hbase(main):016:0> create 'testUser',  {NAME => 'F', VERSIONS => 1}
0 row(s) in 1.0630 seconds

hbase(main):017:0> put 'testUser', '123, 'F:f', '3'
0 row(s) in 0.0120 seconds

hbase(main):018:0> put 'testUser', '123, 'F:f', '1'
0 row(s) in 0.0060 seconds

hbase(main):019:0> scan 'testUser'
ROW                                                COLUMN+CELL
 123                column=F:f, timestamp=1358489113213, value=1
1 row(s) in 0.0110 seconds

hbase(main):020:0> scan 'testUser',{FILTER => "(PrefixFilter ('123') AND 
ValueFilter (>,'binary:1')"}
ROW                                                COLUMN+CELL
 123                column=F:f, timestamp=1358489110172, value=3
1 row(s) in 0.1790 seconds


Thanks,
Min

Reply via email to