我的应用程序已连接到HBase,并进行了大量通信(每秒数百或数千次读/写)。这可能会严重影响性能,这可能是由于HBase对每个请求执行的I / O操作。
Doo.dle 是对我的代码的调用-蓝色和红色之间的区别是HBase消耗的时间。
目前,我仅在独立模式下进行过测试,其中HBase使用本地文件系统存储数据。我想知道,在分布式模式下将其与实际的HDFS一起使用是否可以显着提高性能,还是仅产生相同的结果。我正在尝试寻找线索,然后再花太多时间来建立和运行集群。
我问自己的第二个问题是,是否可以将独立的HBase配置为仅将数据持久存储到内存(RAM)中,而不是将其写入文件系统中以进行性能评估。
在独立模式下,HBase不使用HDFS\xe2\x80\x89,它在同一个JVM中运行所有HBase守护进程和本地ZooKeeper
\n\n在伪分布式模式下,Hbase 可以针对本地文件系统运行,也可以针对 Hadoop 分布式文件系统的实例运行。所以考虑到性能,单机和伪分布式没有区别。
\n\n完全分布式模式需要使用 HDFS,这意味着任务将在作业上运行,根据我的经验,这需要时间。
\n\n因此,在完全分布式模式下使用 Hbase 和实际的 HDFS 可以显着提高性能。
\n