代码之家  ›  专栏  ›  技术社区  ›  Pierre

优化BerkeleyDB JE数据库

  •  3
  • Pierre  · 技术社区  · 15 年前

    我计划在 BerkeleyDB JE 数据库。

    键的长度是固定的(大约10字节),但值的长度是可变的。数据库不会是事务性的。

    您对 EnvironmentConfig 以及 DatabaseConfig 为了优化数据库的大小和速度?

    非常感谢,

    皮埃尔

    1 回复  |  直到 15 年前
        1
  •  3
  •   Pierre    15 年前

    好的,我用这个工具找到了解决方案 com.sleepycat.je.util.DbCacheSize 包装成berkeleyDB JE

    java -cp je-4.0.103.jar com.sleepycat.je.util.DbCacheSize -records 3000000000 -key 8
    Inputs: records=3000000000 keySize=8 dataSize=-1 nodeMax=128 binMax=128 density=80% overhead=10%
    
    === Cache Sizing Summary ===
    
       Cache Size       Btree Size    Description
    ---------------  ---------------  -----------
    206,574,616,257  185,917,154,632  Minimum, internal nodes only
    231,821,163,884  208,639,047,496  Maximum, internal nodes only
    
    To get leaf node sizing specify -data
    
    === Memory Usage by Btree Level ===
    
     Minimum Bytes    Maximum Bytes      Nodes    Level
    ---------------  ---------------  ----------  -----
    184,101,562,500  206,601,562,500  29,296,875    1
      1,797,864,968    2,017,591,304     286,102    2
         17,551,212       19,696,236       2,793    3
            169,668          190,404          27    4
              6,284            7,052           1    5