> So, even if I use get.addColumn(byte[] family, byte[] qualifier) for a > certain cell, the HBase will have to traverse from the beginning of > the column family to the qualifier I defined? Is it because HBase has > to traverse all the blocks in the HFile to find the row key or the > qualifier?
The answer is different for 0.20 and 0.90, but the short version would be: sometimes yes and sometimes not all of the KVs will be read. HBase is getting better at this but there's still work to do. > I am confused here, in the keyvalue pairs in the data block, does the > key refer to the row key or it refer to qualifier? Where is the row > key and where is the qualifier? > This has bothered me for a while. It would be nice to figure it out. > Many thanks. > Down in the HBase internals we use KeyValue where the key is basically row + family + qualifier + timestamp. See http://hbase.apache.org/docs/r0.89.20100924/apidocs/org/apache/hadoop/hbase/KeyValue.html J-D
