問題タブ [mapdb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - キーと値の MapDB 固定構造
MapDB に数十億のキーと値のペアを保存したいと考えています。特定の要件があります。
キー = long (8 バイト) 値 = (UUID + 開始日 + 終了日) の最大 5 エントリ、つまり 5 * 32 バイト = 160
要件は、シングル スレッド アプリを使用することです。キーによってロードし、エントリ内の日付の 1 つを変更します。値のサイズは変更されません。
get と put を行うための最も効率的なセットアップは何だろうか。160 のバイト配列を事前に割り当て、それを値として使用することでパフォーマンスが向上しますか? それとも問題ではなく、サイズが柔軟なバイト配列を使用するだけですか?
現在、私は持っています
ポンプ:
ソースはどこですか
読み込み中
datapump を使用して 20,000,000 個のアイテムをマップにロードした後 (時間の経過とともにパフォーマンスが低下します)、ルックアップは少し残念です:
199,999 ミリ秒で 200,000 回のルックアップ。(約1000回/秒)
テスト アプリを 2 回目に実行すると、ルックアップが劇的に増加します。
7,597 ミリ秒で 200,000 回のルックアップ。
キー/値の固定サイズ要件を考慮して、パフォーマンスを改善するためにできることはありますか? 有効にできるオプションはありますか?
データ ポンプがあるため、TreeMap を使用しました。HashMap を使用すると、パフォーマンスが大幅に向上しますか?
乾杯!
mapdb - newTempHashMap は mapdb でどのように機能しますか?
newTempHashMap は mapdb でどのように機能しますか? それは単なるファイル ベースのハッシュ マップですか、それともインメモリ キャッシング レイヤーがありますか?
android - Android で MapDB を使用するためのベスト プラクティス
特にアクティビティのライフサイクルに関して、Android で MapDB を使用する最良の方法は何ですか? すべてのマップ インスタンスが正しくガベージ コレクションされている限り、DB のシングルトン インスタンスを維持するとメモリの問題が発生しますか?
DB のインスタンスが閉じられる前にガベージ コレクションされるとどうなりますか (すべてのトランザクションがコミットされていると仮定します)。
mapdb - メモリにマップされたファイルとトランザクションを無効にした MapDB の耐久性
MapDB の使用について質問があります。メモリにマップされたファイルと無効なトランザクションで MapDB を使用する場合、JVM がクラッシュまたは強制終了された場合でも、MapDB はデータの耐久性を保証しますか?
java - MapDB マップの並行作成
MapDB を使用して並列マップを作成しています - それが安全で、より良い方法で実行できるかどうかを知りたいです。また、各 sales テーブル クエリが 100 万件のレコードになる可能性があると仮定します。
mapdb - mapDB で複合キーを使用してツリーマップを作成する方法
https://github.com/jankotek/mapdb/blob/master/src/test/java/examples/TreeMap_Composite_Key.javaの例がありますが、機能していません。サンプルコードを提供してください。