The 13th KIR: Improving the Read Performance of KV database in Klaytn

Summary

KLAY Funding

  • Proposed: KLAY worth USD 297,000

Proposal

Brief Introduction of the Project

As the scales of blockchain systems become larger, the amount of data processed in the blockchain system increases exponentially. Due to a huge amount of data and lack of improvement in the database system, issues of I/O performance degradation in such a blockchain environment become serious. The types and characteristics of data read/written in the blockchain system are different from those of other systems, and therefore optimization that targets block processing is demanded.

In this proposal, we aim to solve the I/O performance degradation. To achieve this, we plan to conduct two main tasks: analysis of I/O performance of KV (Key-Value) database in Klaytn and design of an optimized algorithm and a data structure for Klaytn. First, we plan to analyze the I/O performance of the database by using multiple types of storage devices to identify performance bottleneck points, evaluate compaction operations, and examine the data structure implemented in the database. Furthermore, we will compare the current database with another database to find optimized features that can be applied to the new design. Finally, we aim to propose our new design and implementation of the database that effectively resolves the issues of read performance
bottleneck.

Key Deliverables

Four key deliverables are listed below.

  1. Technical reports
    Technical report describing our research steps and results for two main tasks
  2. Experiment results
    Data from analysis and experiments conducted in the project including analysis on compaction algorithm, comparison experiments of LevelDB and RocksDB, and so on.
  3. Test code
    Code used for the analysis and experiments mentioned above.
  4. Implementation details
    Implementation details including source code for our modified compaction algorithm or data structure.