stack created HBASE-14697:
-----------------------------

             Summary: Random Read Improvements
                 Key: HBASE-14697
                 URL: https://issues.apache.org/jira/browse/HBASE-14697
             Project: HBase
          Issue Type: Umbrella
          Components: Performance
            Reporter: stack


I was looking at something else and then got drawn into graphs of where we are 
spending time doing random reads. Interesting is that most CPU -- ~5% is in 
metrics adding -- and bloomfilter look ups cost.

This is an umbrella background issue to host random read improvements as 
subtasks.

Here is what perf top shows doing YCSB workloadc (all random read) against a 
server that is up on a 5-node HDFS cluster hosting 7 regions loaded by YCSB.

{code}
  4.91%  perf-32667.map      [.] 
Lorg/apache/hadoop/metrics2/lib/MutableHistogram;.add
  2.27%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/ipc/RpcServer$Call;.setResponse
  2.10%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/io/hfile/CompoundBloomFilter;.checkContains
  2.06%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/HRegion$RegionScannerImpl;.<init>
  1.94%  perf-32667.map      [.] Lorg/apache/hadoop/hbase/ipc/CallRunner;.run
  1.89%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/io/hfile/CombinedBlockCache;.getBlock
  1.82%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/RSRpcServices;.get
  1.66%  perf-32667.map      [.] Lorg/apache/hadoop/hbase/util/Counter;.add
  1.66%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/StoreFileScanner;.getScannersForStoreFiles
  1.41%  perf-32667.map      [.] Lorg/apache/hadoop/hbase/util/MurmurHash;.hash
  1.40%  [kernel]            [k] _spin_lock
  1.34%  perf-32667.map      [.] Lsun/nio/ch/SocketChannelImpl;.read
  1.32%  perf-32667.map      [.] 
Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock
  1.28%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/StoreFileScanner;.shouldUseScanner
  1.27%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/StoreFile$Reader;.checkGeneralBloomFilter
  1.17%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/ipc/RpcServer$Connection;.processRequest
  1.15%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/ipc/RpcServer$Listener$Reader;.processing
  1.14%  perf-32667.map      [.] Lsun/nio/ch/SocketChannelImpl;.write
  1.13%  [vdso]              [.] 0x00007fffbedff8d4
  1.11%  [kernel]            [k] copy_user_generic_string
  1.11%  perf-32667.map      [.] Lsun/nio/ch/IOUtil;.write
  1.05%  [nx_nic]            [.] 0x000000005f49014a
  0.96%  perf-32667.map      [.] 
Ljava/util/concurrent/ConcurrentHashMap;.replaceNode
  0.88%  perf-32667.map      [.] 
Ljava/util/concurrent/locks/ReentrantReadWriteLock$Sync;.tryAcquireShared
  0.86%  perf-32667.map      [.] Ljava/util/concurrent/ConcurrentHashMap;.putVal
  0.82%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/regionserver/StoreFile$Reader;.passesKeyRangeFilter
  0.81%  perf-32667.map      [.] Lorg/apache/hadoop/hbase/ipc/RpcServer;.call
  0.77%  perf-32667.map      [.] 
Lorg/apache/hadoop/hbase/protobuf/ProtobufUtil;.toGet
  0.76%  perf-32667.map      [.] Lsun/nio/ch/Util;.getTemporaryDirectBuffer
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to