Skip to content
  • Igor Canadi's avatar
    Make it easier to start using RocksDB · 038a477b
    Igor Canadi authored
    Summary:
    This diff is addressing multiple things with a single goal -- to make RocksDB easier to use:
    * Add some functions to Options that make RocksDB easier to tune.
    * Add example code for both simple RocksDB and RocksDB with Column Families.
    * Rewrite our README.md
    
    Regarding Options, I took a stab at something we talked about for a long time:
    * https://www.facebook.com/groups/rocksdb.dev/permalink/563169950448190/
    
    I added functions:
    * IncreaseParallelism() -- easy, increases the thread pool and max_background_compactions
    * OptimizeLevelStyleCompaction(memtable_memory_budget) -- the easiest way to optimize rocksdb for less stalls with level style compaction. This is very likely not ideal configuration. Feel free to suggest improvements. I used some of Mark's suggestions from here: https://github.com/facebook/rocksdb/issues/54
    * OptimizeUniversalStyleCompaction(memtable_memory_budget) -- optimize for universal compaction.
    
    Test Plan: compiled rocksdb. ran examples.
    
    Reviewers: dhruba, MarkCallaghan, haobo, sdong, yhchiang
    
    Reviewed By: dhruba
    
    CC: leveldb
    
    Differential Revision: https://reviews.facebook.net/D18621
    038a477b