Tips on improving reading performance
In some scenario, we need to have high RPS in HBase reading.Therefore, we could change some configuration in HBase to meet this requirement. I found this blog very helpful. HBase official guide is also great.
- Increase
hfile.block.cache.size
and decreasehbase.regionserver.global.memstore.size
. The first configuration is for reading cache and the second one is writing cache. The sum of two value should be 0.8 - Decrease
BLOCKSIZE
in HBase table. When we get one block and save it in the cache, if we did not read it in the future, the rest of block is wasted. Therefore, we are supposed to reduce blocksize from 64M to an appropriate value. - Increase
hbase.regionserver.handler.count
to handler more threads requests. - Split data and make sure each region server gets similar amount requests.