Hi,
I am evaluating HBase for a serving system. The requirements are
fairly simple. Each record comprises a key and a value (size ~4k).
I set up a small cluster consisting of two boxes and the number of
records inserted into the table is close to 65K.
Now I ran a tomcat server on one of the boxes (where the master is
running). The tomcat server establishes a connection to hbase at start
and then on each request queries the hbase for the record.
The benchmarks were not good. I ran the benchmarks for 30 min with
20 clients (talking to tomcat) and the average response time was 51 ms.
When I increased the number of clients to 50, the average response time
increased to 110 ms. To ensure that tomcat is not the bottleneck, I
logged the time taken for each Hbase request and found that to be
correlating the benchmarks (time increased when i increased the number
of clients.).
Any idea as to why this would happen given that the number of
records is not huge? (FYI: Both the boxes act as region servers, the box
where tomcat runs, also runs hbase master and the dfs namenode)
Could it be due to the way I have set up Hbase?
Any help would be appreciated.
thanks
karthik