Ускорение ответа чтения HBase

У меня есть кластер HBase v0.90.4-cdh3u3 из 4 узлов, развернутый на инстансах Amazon XLarge (16 ГБ ОЗУ, 4 ядра ЦП) с кучей 8 ГБ -Xmx, выделенной для серверов HRRegion, 2 ГБ для узлов данных. . HMaster\ZK\Namenode находится в отдельном экземпляре XLarge. Целевой набор данных — 100 миллионов записей (каждая запись — 10 полей по 100 байт). Сравнительный анализ выполнялся одновременно из 100 параллельных потоков.

Меня смущает полученная задержка чтения по сравнению с тем, чего добилась команда YCSB и показала в своейстатье YCSB. Они достигли пропускной способности до 7000 операций в секунду с задержкой 15 мс (стр. 10, см. таблицу задержек). Я не могу получить пропускную способность выше 2000 операций в секунду при рабочей нагрузке 90% чтения/10% записи. Запись происходит очень быстро с отключенной автоматической фиксацией (ответ в течение нескольких мс), в то время как задержка чтения в среднем не опускается ниже 70 мс.

Вот некоторые настройки HBase, которые я использовал:

  • hbase.regionserver.handler.count=50
  • hfile.block.cache.size=0.4
  • hbase.hregion.max.filesize=1073741824
  • hbase.regionserver.codecs=lzo
  • hbase.hregion.memstore.mslab.enabled=true
  • hfile.min.blocksize.size=16384
  • hbase.hregion.memstore.block.multiplier=4
  • hbase.regionserver.global.memstore.upperLimit=0,35
  • hbase.zookeeper.property.maxClientCnxns=100

Какие настройки вы рекомендуете посмотреть\настроить для ускорения чтения с помощью HBase?

6
задан Alex Averbuch 25 February 2013 в 15:00
поделиться