Hi guys:

I did some test on my pc to find the reason as Jan Van Besien mentioned in user 
channel.


#test env
OS : win10
JDK: 1.8
MEM: 8GB


#test data:
1 million rows with only one columnfamily and one qualifier.


rowkey: rowkey-#index#
value: value-#index#


#test method:
just use client api to scan with default config several times, no pe, no ycsb


#test result(avg):
v1.2.0: 800ms
v2.1.0: 1050ms


So, it is sure that v2.1 is slower than v1.2, after this, i did some statistics 
on regionserver.
Then i find the partly reason is related to the size estimated.


The code line below in StoreScanner.next() cost about 100ms in v2.1, and it 
added from v2.0, see HBASE-17647. 
"int cellSize = PrivateCellUtil.estimatedSerializedSizeOf(cell);"


Should we support to disable the MaxResultSize limit(2MB by default now) to get 
more efficient if user exactly knows their data and could limit results only by 
setBatch and setLimit? 

Reply via email to