rocksdb/include/rocksdb
Siying Dong 9edda37027 Universal Compaction to Have a Size Percentage Threshold To Decide Whether to Compress
Summary:
This patch adds a option for universal compaction to allow us to only compress output files if the files compacted previously did not yet reach a specified ratio, to save CPU costs in some cases.

Compression is always skipped for flushing. This is because the size information is not easy to evaluate for flushing case. We can improve it later.

Test Plan:
add test
DBTest.UniversalCompactionCompressRatio1 and DBTest.UniversalCompactionCompressRatio12

Reviewers: dhruba, haobo

Reviewed By: dhruba

CC: leveldb

Differential Revision: https://reviews.facebook.net/D13467
2013-10-17 13:33:39 -07:00
..
arena.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
c.h Replace include/leveldb with include/rocksdb. 2013-08-23 10:51:00 -07:00
cache.h LRUCache to try to clean entries not referenced first. 2013-10-11 09:26:21 -07:00
compaction_filter.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
comparator.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
db.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
env.h Env class that can randomly read and write 2013-10-10 00:03:08 -07:00
filter_policy.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
iterator.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
ldb_tool.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
memtablerep.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
merge_operator.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
options.h LRUCache to try to clean entries not referenced first. 2013-10-11 09:26:21 -07:00
perf_context.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
slice_transform.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
slice.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
statistics.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
status.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
table_builder.h Universal Compaction to Have a Size Percentage Threshold To Decide Whether to Compress 2013-10-17 13:33:39 -07:00
table_stats.h Add bloom filter to predefined table stats 2013-10-17 11:43:06 -07:00
transaction_log.h Features in Transaction log iterator 2013-10-14 18:16:21 -07:00
types.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00
universal_compaction.h Universal Compaction to Have a Size Percentage Threshold To Decide Whether to Compress 2013-10-17 13:33:39 -07:00
write_batch.h Remove obsolete namespace mappings. 2013-10-08 22:53:38 -07:00