二〇二六年 レンタル Mac Mini七時二十四分:LMDB と RocksDB 意思決定マトリクス(バルク書込・圧縮窓・checkpoint・ディスク閾値)

運用設計
約8分

埋め込み KVをレンタル Mac Miniで七時二十四分回すと、RocksDB の圧縮とcheckpoint、LMDB のmapsizeが同居ワーカーと同一 APFSで衝突します。表とINI、夜間窓、黄赤閾値で固定します。Timescale/Postgres 取込稿・水位 FAQ・LanceDB durable memory 稿。

  1. 圧縮とバルクが同じ深夜帯に重なると、stall と尾遅延が先に顕在化します。
  2. mapsize 不足やWAL 肥大は黙停止ではなく書込失敗や巻枯渇として現れます。
  3. checkpoint 直後の古 SST 掃除がバックアップと重なると、二倍時間が平常のしきい値を超えやすいです。

リスクの骨格

LMDBは単一ライタ前提、RocksDBは圧縮が帯域を奪います。水位 FAQの黄赤で投入ゲートを配線します。

意思決定マトリクス(出発点)

読み多・小実装ならLMDB、書き多・TTLならRocksDB。

観点 LMDB RocksDB
書込モデル 単一ライタ直列・B+木 mmap LSM・WAL+memtable
圧縮 実質環境複製で整理 Compaction 本格・帯域大
checkpoint 静止+ファイルコピー Checkpoint API・WAL 整合

実行可能な設定項(INI 抜粋)

OPTIONS を版管理します。

[Version]
  rocksdb_version=9.x
[DBOptions]
  max_background_jobs=6
  bytes_per_sync=1048576
[CFOptions "default"]
  write_buffer_size=67108864
  max_write_buffer_number=3
  min_write_buffer_number_to_merge=2
  level0_file_num_compaction_trigger=4
  max_bytes_for_level_base=536870912
  compaction_pri=3
  periodic_compaction_seconds=86400

LMDB:mdb_env_set_mapsizeに余裕、mdb_env_syncはバッチ境界。

圧縮窓・checkpoint・夜間帯

  • JST 二〜五時にCompaction、checkpointは十五分以上ずらす。
  • checkpoint後にWAL 掃除。caffeinate -dimsu で夜間帯を守る。

監視とディスク水位(黄赤)

  • immutable 列が平常の二倍なら窓不足。stall続きならrate limit。

しきい値一覧

指標 黄 赤 アクション
APFS 空き率 約二割未満 約一割未満 投入減速・圧縮延期
絶対空き 約五ギビ未満 約二ギビ未満 checkpoint 延期・退避
圧縮所要比 平常の一・五倍 平常の二倍超 窓延長・並列見直し

長時間運用ランブック(五手順)

  1. db_path とログを論理分離し基線を残す。
  2. INIを版管理し起動で読む。
  3. JST 二〜五時にCompaction、checkpointは十五分空ける。
  4. 黄で投入半速、赤でcheckpoint 停止と退避。
  5. 四半期に検証巻リストアで閾値見直し。

引用ゲート:write_buffer_size 六十四メガ、level0_file_num_compaction_trigger 四、空き黄二割赤一割、圧縮と checkpoint は離す。

FAQ

NW マウント
主データは内蔵巻へ。
mapsize/TTL
mapsizeは余裕二倍。periodic_compaction_secondsは夜間窓と同じ表で管理。

購入・プランの選び方

RAMはmmapとOSとワーカー。SSDはSST・WAL・退避の合算。

まとめ:表でエンジンを選び、INIと夜間窓で衝突を外し、黄赤で投入減速。公開購入で余白ノードを確保。

LMDB/RocksDB 七×二十四向け Mac ノード

RunMini の Apple Silicon で圧縮窓とcheckpointにディスク余白を確保。ホーム・料金・ヘルプ・公開購入(ログイン不要可)。

ブログ一覧 公開購入

プランを選ぶ(公開購入)