2017-06-01 11 views
1

私はApache Ignite 2.0をキー値ストアとして使用しています。私のキーは10〜15桁の数字で、値は単一の整数です。私は、このようなキーと値のペアを約5億個保存するつもりです。Apache Ignite 2.0でメモリ足を減らす

ベンチマークでは、このようなキー値エントリを1百万個保存すると、メモリ使用率は約90MBになります。値として整数だけを格納するには、そのような膨大なメモリを投資したくありません。すなわち、値として単一の整数を有するレコード当たり約90Bytesである。

誰かがキーで使用されるメモリオーバーヘッドをどのように減らすことができるかについて、光を投げてもらえますか?設定はありますか?圧縮は必要ないので、40Bytesやその他のメタ情報を使用しているBinaryObjectImplを減らすことはできますか?

他のkv店舗や技術でハイライトすることができますが、メモリの足入れが少ない膨大な数のレコード(数十億もの)を保存することができます。

更新: 私は設定としてexample-cache.xmlをそのまま使用していますが、変更はありません。

ありがとうございました。

+0

このサイズはどのように計算されましたか?もう100万のキーと値のペアを追加して、サイズをもう一度計算しようとしましたか? –

答えて

0

キーバリューストア(データグリッドなし)が必要な場合は、MapDBを試してみましたか? http://www.mapdb.org/

オフ・ヒープ・ストレージとスケーラビリティーを提供します。私たちはキャッシュストレージのためのいくつかのプロジェクトでそれを成功裏に使用しました。

+0

こんにちはsteve、あなたの返事をありがとう。私はmapdbをチェックした。私はその無限のJavaコレクションを理解することができます。しかし、どのようにスケールするのですか?私はクラスタリング機能を見ていませんでした。 – Carbonrock