Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-83

Add JMeter performance test for HBase

    Details

    • Type: Test
    • Status: Resolved
    • Priority: Major
    • Resolution: Invalid
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      The PerformanceEvaluation test is good for running benchmarks, but is not really designed for learning about the performance of HBase for real world datasets. By using JMeter we can test HBase to discover its average response time under different loads.

      1. HADOOP-2625.patch
        11 kB
        Tom White
      2. hbase.jmx
        5 kB
        Tom White
      3. hbase-jmeter-test.jar
        3 kB
        Tom White
      4. hbase-jmeter-test.jmx
        5 kB
        Tom White
      5. hbench.jar
        4 kB
        Tom White
      6. plot.r
        0.9 kB
        Tom White

        Activity

        Hide
        tomwhite Tom White added a comment -

        Instructions for use:

        1. Install Apache JMeter
        2. Place hbench.jar in the lib/ext directory
        3. Copy hadoop core and hbase jars into lib.
        4. Copy all the jars in hadoop lib into lib.
        5. Launch JMeter.
        6. Open the hbase.jmx test plan.
        7. Click on Java Request to set up HBase config.
        8. Click on Graph Requests and then Run | Start
        9. Try increasing the number of threads and the delay in Thread Group.

        Show
        tomwhite Tom White added a comment - Instructions for use: 1. Install Apache JMeter 2. Place hbench.jar in the lib/ext directory 3. Copy hadoop core and hbase jars into lib. 4. Copy all the jars in hadoop lib into lib. 5. Launch JMeter. 6. Open the hbase.jmx test plan. 7. Click on Java Request to set up HBase config. 8. Click on Graph Requests and then Run | Start 9. Try increasing the number of threads and the delay in Thread Group.
        Hide
        tomwhite Tom White added a comment -

        Patch for JMeter test code and support files. This really belongs in a HBase contrib module, so should wait until the Hadoop TLP reorganization is complete before being committed. In the meantime, I've attached some updated files and instructions.

        1. Install Apache JMeter (I used 2.3.1).
        2. Place hbase-jmeter-test.jar in the lib/ext directory.
        3. Copy hadoop core and hbase jars into lib.
        4. Copy all the jars in hadoop lib into lib.
        5. Launch JMeter.
        6. Open the hbase-jmeter-test.jmx test plan.
        7. Create a keys file containing the keys you want to query, one per line.
        8. Click on Java Request to set up configure table, column names, and keys file location.
        9. Click on Graph Requests and then Run | Start. This will plot responses in the window and also create an output file (results.csv) that can be fed into the attached R script for further analysis.
        10. Try increasing the number of threads and the delay in Thread Group.

        Show
        tomwhite Tom White added a comment - Patch for JMeter test code and support files. This really belongs in a HBase contrib module, so should wait until the Hadoop TLP reorganization is complete before being committed. In the meantime, I've attached some updated files and instructions. 1. Install Apache JMeter (I used 2.3.1). 2. Place hbase-jmeter-test.jar in the lib/ext directory. 3. Copy hadoop core and hbase jars into lib. 4. Copy all the jars in hadoop lib into lib. 5. Launch JMeter. 6. Open the hbase-jmeter-test.jmx test plan. 7. Create a keys file containing the keys you want to query, one per line. 8. Click on Java Request to set up configure table, column names, and keys file location. 9. Click on Graph Requests and then Run | Start. This will plot responses in the window and also create an output file (results.csv) that can be fed into the attached R script for further analysis. 10. Try increasing the number of threads and the delay in Thread Group.
        Hide
        stack stack added a comment -

        Resolving as no longer valid (Sorry Tom). We have other tools for loading that can put up loads of a more interesting character.

        Show
        stack stack added a comment - Resolving as no longer valid (Sorry Tom). We have other tools for loading that can put up loads of a more interesting character.

          People

          • Assignee:
            tomwhite Tom White
            Reporter:
            tomwhite Tom White
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development