Thanks Zahoor, I read through the document you referred to, I am confused about what means leaf-level index, intermediate-level index and root-level index. It is appreciate if you could give more details what they are, or point me to the related documents.
BTW: the document you pointed me is very good, however I miss some basic background of 3 terms I mentioned above. :-) regards, Lin On Wed, Aug 22, 2012 at 12:51 PM, J Mohamed Zahoor <jmo...@gmail.com> wrote: > I could be wrong. I think HFile index block (which is located at the end >> of HFile) is a binary search tree containing all row-key values (of the >> HFile) in the binary search tree. Searching a specific row-key in the >> binary search tree could easily find whether a row-key exists (some node in >> the tree has the same row-key value) or not. Why we need load every block >> to find if the row exists? >> >> > Hmm... > It is a multilevel index. Only the root Index's (Data, Meta etc) are > loaded when a region is opened. The rest of the tree (intermediate and leaf > index's) are present in each block level. > I am assuming a HFile v2 here for the discussion. > Read this for more clarity http://hbase.apache.org/book/apes03.html > > Nice discussion. You made me read lot of things. :-) > Now i will dig in to the code and check this out. > > ./Zahoor >