Skip to content
  • Yi Wu's avatar
    Add bulk create/drop column family API · 2cd00773
    Yi Wu authored
    Summary:
    Adding DB::CreateColumnFamilie() and DB::DropColumnFamilies() to bulk create/drop column families. This is to address the problem creating/dropping 1k column families takes minutes. The bottleneck is we persist options files for every single column family create/drop, and it parses the persisted options file for verification, which take a lot CPU time.
    
    The new APIs simply create/drop column families individually, and persist options file once at the end. This improves create 1k column families to within ~0.1s. Further improvement can be merge manifest write to one IO.
    Closes https://github.com/facebook/rocksdb/pull/2248
    
    Differential Revision: D5001578
    
    Pulled By: yiwu-arbug
    
    fbshipit-source-id: d4e00bda671451e0b314c13e12ad194b1704aa03
    2cd00773