6

Amazon XLarge インスタンス (16Gb RAM、4 コア CPU) にデプロイされた 4 ノード HBase v0.90.4-cdh3u3 クラスターがあり、8Gb ヒープ -Xmx が HRegion サーバーに割り当てられ、2Gb がデータノードに割り当てられています。HMaster\ZK\Namenode は別の XLarge インスタンスにあります。ターゲット データセットは 1 億レコードです (各レコードは 10 フィールド x 100 バイトです)。並列 100 スレッドから同時に実行されるベンチマーク。

YCSB チームが達成し、 YCSB 論文で示したものと比較して、私が得た読み取りレイテンシーと混同しています。彼らは、15 ミリ秒のレイテンシーで最大 7000 ops/秒のスループットを達成しました (10 ページ、読み取りレイテンシー チャート)。読み取り 90%、書き込み 10% のワークロードで 2000 ops/秒を超えるスループットを達成できません。自動コミットが無効になっている場合、書き込みは非常に高速ですが (応答は数ミリ秒以内)、読み取りレイテンシは平均で 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 で読み取りを高速化するには、どの設定を参照して\調整することをお勧めしますか?

4

3 に答える 3

1

新しい安定したバージョンにアップグレードすると役立ちます。0.92+ には、本当に役立つ新しい HFile v2 が含まれています。

  • 0.94 がリリースされ、いくつかのポイント リリースがありました。
  • CDH ビルドを好む場合、CDH 4.1には 0.92.1 ベースの HBase があります。

ブルーム フィルターを有効にして事前に分割されたテーブルを作成すると、非常に役立ちます。ハンドラーの数を少し減らしてみます。http://archive.cloudera.com/cdh4/cdh/4/hbase/book.html#perf.handlers

70 ミリ秒の読み取りレイテンシーは、私が予想していたものとはかけ離れています。gc チューニングを調べて、すべての RegionServer が実行中であり、ベンチマークしようとしているテーブルのリージョンがあることを確認してください。

于 2012-11-19T21:19:20.093 に答える
0

これは直接的な答えではありません。GangliaHBase のパフォーマンスを監視するようにセットアップすることをお勧めします。こちらこちらの指示に従うことができます。

メトリックを取得したら、システムのボトルネックを特定し、それに対して何らかの調整を実行できる場合があります。

于 2013-02-25T16:23:05.857 に答える
0

HBase を正確にベンチマークすることは非常に困難です。使用しているクエリに関する情報も提供する必要があります。

たとえば、HBase では、RowFilter と QualifierPrefixFilter を使用したスキャン クエリは、(RowFilter で指定された) 1 つの行のみを取得している場合でも、非常に遅くなることがあります。

ただし、スキャンと QualifierPrefixFilter の代わりに get を使用して実行される同じクエリは、はるかに高速です。

于 2015-06-09T05:47:38.950 に答える