rocksdb/util
kailiu 1415f8820d Improve the "table stats"
Summary:
The primary motivation of the changes is to make it easier to figure out the inside of the tables.

* rename "table stats" to "table properties" since now we have more than "integers" to store in the property block.
* Add filter block size to the basic table properties.
* Whenever a table is built, we'll log the table properties (the sample output is in Test Plan).
* Make an api to expose deleted keys.

Test Plan:
Passed all existing test. and the sample output of table stats:

    ==================================================================
        Basic Properties
    ------------------------------------------------------------------
                  # data blocks: 1
                      # entries: 1

                   raw key size: 9
           raw average key size: 9
                 raw value size: 9
         raw average value size: 0

                data block size: 25
               index block size: 27
              filter block size: 18
         (estimated) table size: 70

                  filter policy: rocksdb.BuiltinBloomFilter
    ==================================================================
        User collected properties: InternalKeyPropertiesCollector
    ------------------------------------------------------------------
                    kDeletedKeys: 1
    ==================================================================

Reviewers: dhruba, haobo

Reviewed By: dhruba

CC: leveldb

Differential Revision: https://reviews.facebook.net/D14187
2013-11-19 16:29:42 -08:00
..
arena_impl.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
arena_impl.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
arena_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
auto_roll_logger_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
auto_roll_logger.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
auto_roll_logger.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
bit_set.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
blob_store_test.cc Move the compiler back to 4.8.1 + more small fixes 2013-11-18 11:40:16 -08:00
blob_store.cc Fixing the warning messages captured under mac os # Consider using git commit -m 'One line title' && arc diff. # You will save time by running lint and unit in the background. 2013-11-12 20:05:28 -08:00
blob_store.h Implement max_size in BlobStore 2013-10-23 14:38:52 -07:00
bloom_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
bloom.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
build_version.h Fixed typos 2013-11-16 11:21:34 +00:00
cache_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
cache.cc Fixing the warning messages captured under mac os # Consider using git commit -m 'One line title' && arc diff. # You will save time by running lint and unit in the background. 2013-11-12 20:05:28 -08:00
coding_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
coding.cc WriteBatch::Put() overload that gathers key and value from arrays of slices 2013-11-08 16:34:32 -08:00
coding.h WriteBatch::Put() overload that gathers key and value from arrays of slices 2013-11-08 16:34:32 -08:00
comparator.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
crc32c_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
crc32c.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
crc32c.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
env_hdfs.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
env_posix.cc make util/env_posix.cc work under mac 2013-11-16 23:44:39 -08:00
env_test.cc make util/env_posix.cc work under mac 2013-11-16 23:44:39 -08:00
env.cc Flush the log outside of lock 2013-11-07 11:31:56 -08:00
filelock_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
filter_policy.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
hash_skiplist_rep.cc Implementing DynamicIterator for TransformRepNoLock 2013-11-08 00:31:09 -08:00
hash.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
hash.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
histogram_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
histogram.cc Quick fix for a string format 2013-11-12 21:22:32 -08:00
histogram.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
ldb_cmd_execute_result.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
ldb_cmd.cc Fix the string format issue 2013-11-12 21:05:39 -08:00
ldb_cmd.h Task #3071144 Enhance ldb (db dump tool for leveldb) to report row counters for each row type 2013-11-01 13:59:14 -07:00
ldb_tool.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
logging.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
logging.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
manual_compaction_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
murmurhash.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
murmurhash.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
mutexlock.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
options.cc Improve the "table stats" 2013-11-19 16:29:42 -08:00
perf_context_imp.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
perf_context.cc [RocksDB] Add perf_context.wal_write_time to track time spent on writing the recovery log. 2013-10-23 13:38:39 -07:00
posix_logger.h Flush the log outside of lock 2013-11-07 11:31:56 -08:00
random.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
signal_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
skiplistrep.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
slice.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
stack_trace.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
statistics.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
stats_logger.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
status.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
stl_wrappers.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
stop_watch.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
string_util.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
string_util.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testharness.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testharness.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testutil.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
testutil.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
transformrep.cc [RocksDB] Generalize prefix-aware iterator to be used for more than one Seek 2013-11-06 20:45:49 -08:00
vectorrep.cc Fixing the warning messages captured under mac os # Consider using git commit -m 'One line title' && arc diff. # You will save time by running lint and unit in the background. 2013-11-12 20:05:28 -08:00