Hi, Min,

In a bitmap index, each bit of a bitmap corresponds to a particular 
row.  Typically, the 1st bit corresponds to the 1st row, the 2nd bit 
corresponds to the 2nd row, and so on.  In resolve a query condition 
such as "col4 < 1.5", a bitmap is produce to represent the answer. 
For example, if the 1st row and the 4th row of you data satisfy this 
condition, then the 1st bit of the answer and the 4th bit of the 
answer are set to 1, while the other bits are set to 0.  Based on this 
answer, we can retrieve the values of col1, col2, and col3 from the 
1st row and the 4th row.

Take the Java API as an example, one specify the where clause by 
calling build_query, which resolves the query condition and produces a 
bitmap to store the answer.  To retrieve the rows qualify the query, 
one invokes the function get_qualified_ints and friends.  In this 
case, the bitmap is not exposed to the client code.

Hope this helps.

John


On 11/1/2009 5:19 PM, Min Zhou wrote:
> Hi John,
> 
> I guess I might not express clearly what I meant. Take a query like below:
> select col1, col2, col3 from tbl where col4 < 1.5
> 
> how does fastbit find the records for col1, col2, col3 where col4 is
> less than 1.5?
> 
> Thanks,
> Min
> 
_______________________________________________
FastBit-users mailing list
[email protected]
https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users

Reply via email to