Skip to content
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

AKI-646 switch default DB to the rocksDB #1107

Merged
merged 2 commits into from
Jan 28, 2020
Merged

AKI-646 switch default DB to the rocksDB #1107

merged 2 commits into from
Jan 28, 2020

Conversation

AionJayT
Copy link
Collaborator

Description

Fixes Issue # .

Type of change

  • Bug fix.
  • New feature.
  • Enhancement.
  • Unit test.
  • Breaking change (a fix or feature that causes existing functionality to not work as expected).
  • Requires documentation update.

Testing

@AionJayT AionJayT added the enhancement New feature or request label Jan 21, 2020
@AionJayT AionJayT added this to the 1.3 milestone Jan 21, 2020
@AionJayT AionJayT self-assigned this Jan 21, 2020
modAionImpl/src/org/aion/zero/impl/db/DatabaseUtils.java Outdated Show resolved Hide resolved
<!--Boolean value. Enable/disable database compression to trade storage space for execution time.-->
<enable_db_compression>false</enable_db_compression>
<enable_db_compression>true</enable_db_compression>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For LevelDB the compression made performance fairly bad. Do we have experimental data to show that it's better to enable compression with RocksDB?

Copy link
Collaborator Author

@AionJayT AionJayT Jan 23, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can do the benchmark. But base on my understanding, Enable the data compression will increase CPU usage but significantly reduce the data size been wrote into the disk, especially the compacting happens. Also I doubt the leveldb library might use the old version of the native levelDB, So the compression performance is not good. for the benchmark I did before. You can look at the AKI-550.
Also,you can look at the reference link for the details of the rocksdb data compression
https://github.com/facebook/rocksdb/wiki/Compression

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, the default setting in rust kernel also enable the data compression.
https://github.com/aionnetwork/aionr/blob/master/db/core/src/dbconfigs.rs#L82-L100

@AionJayT AionJayT merged commit e9405e2 into master Jan 28, 2020
@AionJayT AionJayT deleted the AKI-646 branch January 28, 2020 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants