Yes instead of a single Get you can supply a list of Get's to the same htable.get call. It will sort and partition the list on a per region basis, make requests in parallel, aggregate the responses and return an array of Result. Make sure you apply your filter to each Get
------------------------------ On Fri 25 May, 2012 11:18 PM IST jack chrispoo wrote: >Thanks Dhaval, and is there a way to get multiple rows (their keys not >contiguous) from HBase server with only one request? it seems to me it's >expensive to send one get request for each one row. > >jack > >On Thu, May 24, 2012 at 5:40 PM, Dhaval Shah ><prince_mithi...@yahoo.co.in>wrote: > >> >> Jack, you can use filters on Get's too.. >> >> >> >> ------------------------------ >> On Fri 25 May, 2012 5:36 AM IST jack chrispoo wrote: >> >> >Hi, >> > >> >I'm new to HBase and I have a question about using filters. I know that I >> >can use filters with scan, say scan start-key=key1 & end-key=key2 and with >> >a SingleColumnValueFilter: columnA=valueA. But in my java program I need >> to >> >do filtering on a set of rows which are not contiguous, my client needs to >> >get all rows with rowid in a set<String> and with columnA=valueA. I don't >> >know how this can be done efficiently. I can imagine that I can do a scan >> >of the entire table and set filers rowid=... and columnA=valueA; or I can >> >use get function to get the rows with rowid in my set all to my client and >> >do the filtering on my client side. But I think neither way is efficient. >> >Can anyone give me a hint on this? >> > >> >Thanks >> >Yixiao >> >>