2017-08-13 12 views
1

私はシェルコマンドを理解していますカウントは、テーブルの行数/数を示します。しかし、INTERVALとCACHEはここで何を表していますか?私はウェブをチェックした。ほとんどすべてのウェブサイトに同じ説明がありますHBaseカウントシェルコマンド

"デフォルトでは、現在のカウントは1000行ごとに表示されていますが、カウント間隔はオプションで指定することができます。例: "

説明している内容がわかりません。

hbase> COUNT 't1', INTERVAL => 100000 
hbase> COUNT 't1', CACHE => 1000 
hbase> COUNT 't1', INTERVAL => 10, CACHE => 1000 

誰でも簡単に説明できますか?

答えて

2

countコマンドを実行するために大きなテーブル(2000行以上)を使用するだけで、それらの動作を確認できます。

それは上と上の現在の結果が出力されますので、count操作は次のように、長い時間がかかることがありますとおり:INTERVALが1000であれば、これまでカウント処理を得るとき、それが印刷されますので、

Current count: 1000, row: ...                       
Current count: 2000, row: .....                          
Current count: 3000, row: .... 

Cacheは、scanコマンドのキャッシュです。基本的には、カウント処理は、キャッシュの設定を増やす場合は速くなりますが、より多くのメモリの費用がかかりますので、それは言う:

あなたの行のサイズが小さい場合、あなたはこの パラメータを増やすことができます。

0

@マローフォックス説明COUNT

キャッシングはもう少し混乱します。キャッシングがなぜ数えられるのでしょうか?カウントした行を覚える必要はありません。重要なのは、行の数であり、行の数ではありません。

キャッシングはちょっとした誤解であり、キャッシングの名前をバッファまたはバッチサイズにするのが適切です。これは各RPCがHBaseに戻ってくる行数です。数が少なすぎると、オーバーヘッドが増え、カウントが非常に遅くなる可能性があります。

ここでこのについての詳細:

https://stackoverflow.com/a/22547731/492773