0

我的 6 节点 Hbase 集群(1 个主 - 5 个从属)有以下硬件配置

每个节点的配置

2.4Ghz,48 核英特尔 CPU

256GB 内存

1Gb/ps 网络连接

30 x SSD 磁盘(JBOD 设置)

操作系统:RHEL 6.6

Hbase 版本:1.2.0

CDH发行版:5.7.0

我在 Hbase 中调整了以下参数:

hbase.client.write.buffer: 64MB


hbase.regionserver.handler.count: 64

master_region_java_heapsize: 125GB




hbase.client.scanner.caching: 10000

hbase.hregion.memstore.flush.size:  8GB


hbase.hregion.max.filesize:100GB

通过这个设置,我能够在 250 个线程下使用 YCSB 获得 85000 IOPS,50% 读取和 50% 写入。

谁能建议我任何有助于我生成更多 IOPS 的配置更改。

4

1 回答 1

1

了解有关您的设置的更多详细信息会有所帮助。(分布、操作系统、集群状态、存储等)

另外,您的目标是在 ycsb 中获得更好的数字吗?

浏览一下你的配置,我觉得如果你有快速存储(ssd、ramdisk 左右),网络就会饱和。

一般来说,我会说坚持基础。

  • 对资源进行良好的监控
  • 识别和了解瓶颈
  • 优化

以下是一些可能对您有所帮助的内容:

如果没有 [1],我希望您已经阅读了有关性能的官方文档。

有一篇关于为 HBase 调整 JVM(特别是 GC)的好文章。[2] [3] [4]

在 apache HBase 博客中有一个有趣的 HDD、SSD 和 RAM 磁盘之间的性能比较。[5]

[1] https://hbase.apache.org/book.html#performance

[2] http://blog.cloudera.com/blog/2014/12/tuning-java-garbage-collection-for-hbase/ [3] https://software.intel.com/en-us/blogs/ 2014/06/18/part-1-tuning-java-garbage-collection-for-hbase [4] http://product.hubspot.com/blog/g1gc-tuning-your-hbase-cluster

[5] https://blogs.apache.org/hbase/entry/hdfs_hsm_and_hbase_part

[6] 奖励视频!- https://vimeo.com/127778854

于 2016-06-21T04:16:48.413 回答