2017-02-23 8 views
0

HBaseには独自のキャッシュシステムがあり、要求を読み取るために、HDFSからデータを取得する前にキャッシュから検索します。しかし、キャッシュのパフォーマンスはJVMのメモリサイズによって妨げられる可能性があります。これが、私がRedaseをHBaseのキャッシュとして使用する理由です。Redisをキャッシュとして使用して、HBaseの読み取りパフォーマンスを改善できますか?

+0

キャッシュ無効化は2つの主要なプログラミング問題の1つです – AdamSkywalker

答えて

0

しないでください。あるデータベースを別のデータベースのキャッシュとして使用すると、簡単に悪夢に陥る可能性があります。キャッシュ無効化シナリオ自体を扱うことは難しい作業です。

  1. アプリケーションレベルでインメモリキャッシュが必要な場合は、私はまだそれを推奨しませんが、それは別の議論です。
  2. データベースレベルでは、HBaseブロックのキャッシュが使用のために十分でない場合、HBaseはユースケースに適したシステムではないか、正しく使用していません。あなたの唯一の懸念は、あなたがたくさんのメモリ/フラッシュ(SSD)を持っているが、HBaseはJVMの制限のためにそれを適切に利用できないということです。 HBaseのbucketcacheを使用することができます。これは、ブロック・ヒープ・メモリーまたはソリッド・ステート・ストレージ(hbase.bucketcache.ioengine)をキャッシュするために使用できます。 HBaseのキャッシングの基礎については、hereをお読みください。
関連する問題