Hi John,
I have a couple questions on FastBit memory usages and policy. My question is
based on an example "Table" person (person_id, age, gender, class,
mailing_addr). Indexed columns are age, gender, class.
1. If a query where-clause is [gender="M"], will only the bitmap index for "M"
be loaded into memory (if they are not loaded into memory yet) to evaluate the
query?
The other choice, though I guess not likely, is to load all bitmap index
for gender, including [gender="M"] and "[gender="F"].
2. If a query where-clause is [gender="M" and age=20], will only the bitmap
index for gender+age be loaded into memory to evaluate the query?
The other choice, though I guess not likely, is to load all bitmap index,
include "gender", "age" and "class".
3. If the query is: select person_id, mailing_addr where age=30.
If n rows meets the query-criteria, how does it read the data from
data-file, in term of memory usage:
a. does it read the whole file into RAM, then pick up these n rows? For a
large data file, it will overflow the physical memory easily.
b. does it read n rows (person_id, mailing_addr only) into RAM, thus the max
memory usage is what is large enough to hold these n rows' data?
c. it there are large number of rows that meets the criteria, does it
provide a way to read 1 row at a time, with memory usage only for 1 row?
(one possible application is to output these rows into a file, with
minimum memory required)
4. When indexes are built for a CVS file, is index built one column at a time,
or one row at a time? If it is one column at a time, the memory needed to build
the current column can be re-used to build the next column.
5. When one column index is built for a CVS file, does it need memory to store
all indexes for the column before they are all saved to the index file?
Thanks for your time in advance.
Jilong Wang
_______________________________________________
FastBit-users mailing list
[email protected]
https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users