RAMdisk での Apache HBase の使用について一般的な質問があります。1 つのテーブルには、合計で約 25 GB の大きなデータ コレクションがあります。このデータを使用して、Java プログラムを使用していくつかの基本的な集計を行っています。
十分なRAMが利用できるので、tmpfsを使用してこのデータセットをRAMディスクに入れようとしました:
mount -t tmpfs -o size=40G none /home/user/ramdisk
次に、HBase を停止し、データ フォルダーの内容を RAM ディスクにコピーしました。最後に、古いデータ ディレクトリを新しいデータ ディレクトリにリンクするシンボリック リンクを作成し、HBase を再度起動しました。
動作しますが、集計を処理すると、以前より少し遅くなりました。
HBase がデータを圧縮している場合 (Snappy 圧縮がアクティブになっている場合) など、RAM ディスクを使用することによる影響はそれほど大きくないと想像できます... しかし、高速なメディアがディスクへのアクセスを遅くする理由を推測することはできません。データ。利用可能な RAM が十分に残っているため、これがボトルネックになることはありません。
多分誰かがこれについて一般的な考えや洞察を持っていますか?