New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MyRocks data size is greater than InnoDB #44
Comments
Comment by mdcallag Excellent, can you also send me the values of any rocksdb config options set in my.cnf? Will take me a few hours to respond. |
Comment by BohuTANG There is no rocksdb configuration in my.cnf, so all is default. |
Comment by mdcallag Can you tell me what is in your RocksDB LOG file (name "LOG") for "Compression algorithms supported"? Mine shows: 2015/06/04-04:33:23.366528 7faff86d38c0 Compression algorithms supported: |
Comment by yoshinorim Could you try the following my.cnf settings and share results?
|
Comment by mdcallag Yoshi - before trying to tune we need to confirm that compression was enabled during his RocksDB build. Then we can tune. MyRocks has a lousy RocksDB configuration and this issue can be kept open for that. Using my test server the defaults are: Started an instance locally with default my.cnf: Compression algorithms supported: cache_index_and_filter_blocks: 1 Options.write_buffer_size: 4194304 Options.min_write_buffer_number_to_merge: 1 Options.level0_file_num_compaction_trigger: 4 Options.target_file_size_base: 2097152 Options.level_compaction_dynamic_level_bytes: 0 Options.soft_rate_limit: 0.00 |
Comment by BohuTANG This issue due to: *.sst not properly cleaned on DROP DATABASE. one 33MB sst dump:
(4975360+57838560)/33559362 ~1.8X ratio Another question: how to find the mapping between table and *.sst files? |
Comment by mdcallag Space is eventually reclaimed as compaction runs. If one table accounts for There is also a way to use different column families for different tables We are working, or have worked, on ways to gather per-table metrics when On Fri, Jun 5, 2015 at 5:31 AM, BohuTANG notifications@github.com wrote:
Mark Callaghan |
Comment by yoshinorim We have not started implementing mappings between table and *.sst files yet. I'll file another task to track this. |
Comment by hermanlee We can also dump out some of the rocksdb configuration options out through information schema, rather than have to look through the rocksdb LOG file: select * from information_schema.rocksdb_cf_options; The db options are mostly available through: show global variables like 'rocksdb%'; |
Comment by yoshinorim @BohuTANG : BTW you can get MyRocks each table size via usual MySQL commands (SHOW TABLE STATUS or SELECT FROM information_schema.tables). Use these commands and compare compression ratio between tables. MyRocks calculates statistics every 600 seconds, and can be configured via rocksdb_stats_dump_period_sec global variable. And note that SHOW TABLE STATUS / I_S do not include size in Memstore (we're working in progress to include size from Memstore, not only from *sst). |
Comment by maykov BohuTANG, optimize table t1; will run manual compaction for the table. However, if you already dropped the table, I can't think of an easy way to trigger compaction. One thing which you can do is to stop mysql and then use the ldb tool to run compaction. If the space is important than the deletion speed, may be you can do truncate table t1;optimize table t1;drop table t1; after https://reviews.facebook.net/D39579 is pushed. There is no correspondence between .sst files and tables or databases. The data is spread out among sst files in the order of insertion and then intermixed through compaction process. Yoshi, I have this task: MySQLOnRocksDB#55 to expose what is stored in each sst files through the information schema. |
We're aware of an issue that DROP TABLE does not claim space correctly. We're working on a fix and issue#60 is tracking the problem. Closing this issue and will update at #60. |
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Test Plan: Added unit test, enabled MTR tests Reviewers: maykov, jtolmer, yoshinorim, hermanlee4 Reviewed By: hermanlee4 Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Test Plan: Added unit test, enabled MTR tests Reviewers: maykov, jtolmer, yoshinorim, hermanlee4 Reviewed By: hermanlee4 Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Test Plan: Added unit test, enabled MTR tests Reviewers: maykov, jtolmer, yoshinorim, hermanlee4 Reviewed By: hermanlee4 Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: a9cdd12
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: 374184b65bd
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: 374184b65bd
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: 374184b65bd
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: 374184b65bd
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265 fbshipit-source-id: 374184b65bd
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Summary: Add support for read and read write locks in RocksDB's LockTable. The implementation is more concerned with correctness than with concurrency. Differential Revision: https://reviews.facebook.net/D38265
Issue by BohuTANG
Thursday Jun 04, 2015 at 11:20 GMT
Originally opened as MySQLOnRocksDB#80
From our benchmarks under the same datasets for MyRocks/InnoDB/TokuDB, data sizes are:
All configuration of MyRocks is in defaults, the 'show engine rocksdb status' as follows:
and
The text was updated successfully, but these errors were encountered: