The 13th KIR: Improving the Read Performance of KV database in Klaytn (milestone 1): Progress Report(1)
Summary
Background & Motivation
The blockchain system such as Klaytn is used by a huge amount of users and nodes. Due to the large number of users, a lot of data items are generated and processed. These items are both globally and locally managed by different types of nodes in the blockchain system. Each node in the system manages the data and such data items are written and read when operations related to block processing in the system are executed. When the data items are required to be written or read, the underlying KV (Key-Value) database, which manages the data, executes I/O operations according to its own implementation and mechanism. However, due to an excessive amount of data or a large number of requests, the KV database is prone to cause bottlenecks in the process of blockchain operations and this leads to delays and even instability of the blockchain network consisting of multiple nodes.
Purpose of the project
In this KIR project, 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.
The purpose of the first main task is to examine the structure and process related to I/O operations (mainly read) in Klaytn platform, to investigate the performance bottleneck of the key-value database in Klaytn platform and to identify factors that lead to low I/O performance of individual nodes in Klaytn. This analysis is for tackling the correct issues that have been causing degradation of I/O performance and further improving the performance by modifying and applying new techniques in the next project duration.
Project Milestones and Schedule
The milestone (revised) and schedule is presented below. The detailed explanation of how milestone and schedule have been changed is described in the attached report.
Key Deliverables
For the current stage of our project (milestone 1), we provide progress report which contains analysis of performance bottleneck of KV databases in Klaytn. It includes experiment results we conducted to evaluate the read performance of KV database.
Please refer to the attached report for details.