Nick Dimiduk created HBASE-10592:
------------------------------------

             Summary: Refactor PerformanceEvaluation tool
                 Key: HBASE-10592
                 URL: https://issues.apache.org/jira/browse/HBASE-10592
             Project: HBase
          Issue Type: Improvement
          Components: test
            Reporter: Nick Dimiduk
            Assignee: Nick Dimiduk
            Priority: Minor
             Fix For: 0.99.0


PerfEval is kind of a mess. It's painful to add new features because the test 
options are itemized and passed as parameters to internal methods. 
Serialization is hand-rolled and tedious. Ensuring support for mapreduce mode 
is a chore because of it.

This patch refactors the tool. Options are now passed around to methods and 
such as a POJO instead of one-by-one. Get rid of accessors that don't help 
anyone. On the mapreduce side, serialization is now handled using json (jackson 
is a dependency anyway) instead of the hand-rolled regex we used before. Also 
do away with custom InputSplit and FileFormat, instead using Text and 
NLineInputFormat. On the local mode side, combine 1 client and N clients into 
the same implementation. That implementation now uses an ExecutorService, so we 
can later decouple number of client workers from number of client tasks. 
Finally, drop a bunch of confusing local state, instead use the new TestOptions 
POJO as a parameter to static methods.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to