rocksdb/utilities/blob_db
Shobhit Dayal b45b1cde3e Feature for sampling and reporting compressibility (#4842)
Summary:
This is a feature to sample data-block compressibility and and report them as stats. 1 in N (tunable) blocks is sampled for compressibility using two algorithms:
1. lz4 or snappy for fast compression
2. zstd or zlib for slow but higher compression.

The stats are reported to the caller as raw-bytes and compressed-bytes. The block continues to be compressed for storage using the specified CompressionType.

The db_bench_tool how has a command line option for specifying the sampling rate. It's default value is 0 (no sampling). To test the overhead for a certain value, users can compare the performance of db_bench_tool, varying the sampling rate. It is unlikely to have a noticeable impact for high values like 20.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4842

Differential Revision: D13629011

Pulled By: shobhitdayal

fbshipit-source-id: 14ca668bcab6499b2a1734edf848eb62a4f4fafa
2019-03-18 12:15:34 -07:00
..
blob_compaction_filter.cc Apply modernize-use-override (2nd iteration) 2019-02-14 14:41:36 -08:00
blob_compaction_filter.h Blob DB: Improve FIFO eviction 2018-03-06 11:57:42 -08:00
blob_db_impl_filesnapshot.cc Support pragma once in all header files and cleanup some warnings (#4339) 2018-09-05 18:13:31 -07:00
blob_db_impl.cc Feature for sampling and reporting compressibility (#4842) 2019-03-18 12:15:34 -07:00
blob_db_impl.h Remove unused Blob WAL filter (#4896) 2019-01-22 11:13:49 -08:00
blob_db_iterator.h Change and clarify the relationship between Valid(), status() and Seek*() for all iterators. Also fix some bugs 2018-05-17 02:56:56 -07:00
blob_db_listener.h Blob DB: Improve FIFO eviction 2018-03-06 11:57:42 -08:00
blob_db_test.cc When closing BlobDB, should first wait for all background tasks (#5005) 2019-02-21 17:26:01 -08:00
blob_db.cc BlobDB: Remove GC interval option (#5044) 2019-03-07 10:19:05 -08:00
blob_db.h BlobDB: Remove GC interval option (#5044) 2019-03-07 10:19:05 -08:00
blob_dump_tool.cc Digest ZSTD compression dictionary once when writing SST file (#4849) 2019-01-18 19:12:57 -08:00
blob_dump_tool.h Ensure delete[] and not delete is used on buffer_ (#4647) 2018-11-07 11:59:50 -08:00
blob_file.cc BlobDB: handle IO error on read (#4410) 2018-09-20 16:58:45 -07:00
blob_file.h BlobDB: handle IO error on read (#4410) 2018-09-20 16:58:45 -07:00
blob_index.h Blob DB: Inline small values in base DB 2017-10-26 12:30:54 -07:00
blob_log_format.cc utilities: Fix build failure with -Werror=maybe-uninitialized (#5074) 2019-03-18 11:35:06 -07:00
blob_log_format.h BlobDB: use char array instead of string as buffer (#4662) 2018-11-13 12:49:29 -08:00
blob_log_reader.cc BlobDB: use char array instead of string as buffer (#4662) 2018-11-13 12:49:29 -08:00
blob_log_reader.h BlobDB: use char array instead of string as buffer (#4662) 2018-11-13 12:49:29 -08:00
blob_log_writer.cc BlobDB: refactor DB open logic 2017-12-11 12:12:38 -08:00
blob_log_writer.h BlobDB: refactor DB open logic 2017-12-11 12:12:38 -08:00