HBase独立性能与在HDFS群集上运行相比

时间:2015-04-07 14:47:11

标签: hadoop hbase hdfs

我的应用程序连接到HBase并进行大量通信(每秒数百或数千次读/写)。这极大地影响了性能,可能是由于HBase对每个请求都进行了I / O操作。

Time cost with and without HBase! Doo.dle是对我的代码的调用 - 蓝色和红色之间的差异是HBase消耗的时间。

目前,我只在独立模式下进行测试,其中HBase使用本地文件系统存储数据。我想知道,在具有实际HDFS的分布式模式下使用一个是否可以显着提高性能,或者只是产生相同的结果。我想要在失去太多时间让群集启动并运行之前找到线索。

我自问的第二个问题是,是否可以将独立的HBase配置为仅将数据保存到内存(RAM),而不是将其写入文件系统以进行性能测量。

1 个答案:

答案 0 :(得分:1)

在独立模式下,HBase不使用HDFS,它在同一个JVM中运行所有HBase守护进程和本地ZooKeeper

在伪分布式模式下,Hbase可以针对本地文件系统运行,也可以针对Hadoop分布式文件系统的实例运行。因此,考虑到性能,独立和伪分布之间没有区别。

完全分布式模式需要使用HDFS,这意味着任务将在作业上运行,并且根据我的经验需要时间。

因此,在具有实际HDFS的完全分布式模式下使用Hbase可以显着提高性能。