LSM Tree Fixed-Size Block Compaction for I/O Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The Log Structured Merge (LSM) tree-based databases face inefficiencies in query performance and resource utilization due to frequent data compaction needs, especially under high load conditions, as they require reading and merging multiple levels with overlapping data, leading to increased I/O and CPU usage.

Innovation Solution

The solution involves using fixed-sized data blocks at each level for data storage, allowing for efficient data compaction by comparing adjacent levels, reducing the probability of data overlap and thereby minimizing the need for unnecessary read and write operations, and optimizing system throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If data compaction operations are performed to merge overlapping data levels in LSM structure, then data storage efficiency is improved, but system throughput plummets due to high I/O and CPU resource consumption

Engineering Contradiction:
Improvedata redundancyVSAvoidsystem throughput
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The patent segments data into fixed-size data blocks at each level. This segmentation allows for more granular control during compaction operations, enabling the system to process smaller, manageable units rather than handling entire levels at once, thus reducing the impact on system throughput while still eliminating data redundancy effectively.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of data block size to a fixed size across all levels. This parameter change enables more predictable and efficient compaction operations by ensuring uniform block sizes, which simplifies the merging process and reduces CPU overhead for size calculations and memory management, thereby maintaining higher system throughput during compaction.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If the number of data levels increases to accommodate more dumps, then data capacity is improved, but query efficiency deteriorates due to increased merging requirements

Engineering Contradiction:
Improvedata capacityVSAvoidquery efficiency
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

By segmenting data into fixed-size blocks, the patent enables more targeted and efficient query operations. Queries can skip entire blocks that are known not to contain relevant data based on fixed-size boundaries, reducing the amount of data that needs to be merged and examined, thus maintaining query efficiency even as data capacity increases through additional levels.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing compaction and query operations only on necessary fixed-size blocks rather than entire levels. This selective approach reduces the workload for queries across multiple levels, as the system can identify and process only the specific blocks that may contain relevant data, thereby maintaining query efficiency while supporting increased data capacity.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of substance

If regular data compaction operations are performed to merge overlapping data, then space utilization is improved, but I/O resource consumption increases due to reading and writing data

Engineering Contradiction:
Improveduplicate dataVSAvoidI/O resource consumption
Core Design Contradiction:
Loss of substanceVSUse of energy by moving object

Solution Approach 1:

The patent segments data into fixed-size blocks, which allows compaction operations to work on smaller, discrete units. This segmentation reduces the total volume of data that needs to be read and written during compaction, as the system can identify and process only the specific blocks containing duplicate or obsolete data, thereby reducing I/O resource consumption while still achieving effective space utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

By changing to fixed-size data blocks, the patent enables more predictable I/O patterns during compaction. The uniform block sizes allow for optimized read-write operations and better caching strategies, reducing the overall I/O resource consumption. Additionally, fixed-size blocks enable the system to pre-allocate and reuse buffer spaces, further minimizing I/O overhead during compaction operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12093234B2Data processing method, apparatus, electronic device, and computer storage medium
Publication Date: 2024.09.17 CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD
  • US12093234B2 patent drawing
  • US12093234B2 patent drawing
  • US12093234B2 patent drawing

AI summary

A data processing method including: acquiring information of multiple first data blocks of a first level to be merged and information of multiple second data blocks of a second level to be merged, wherein each of the first data blocks of the first level has the same first size, and each of the second data blocks of the second level has the same second size; performing, according to the information of the multiple first data blocks and the information of the multiple second data blocks, data comparison on each of the first data blocks and each of the second data blocks; and performing, according to a comparison result, data compaction on the first level and the second level. The embodiments of the present disclosure effectively reduce system overheads caused by I/O data read and write and data comparison, thereby improving the system throughput.