In-Memory Structured Data Filtering for SSD Query Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database management systems (DBMS) face significant bottlenecks in query performance due to the need to read and filter large volumes of data from non-volatile memory, leading to high processor time, memory usage, and data traffic, especially when handling multiple queries simultaneously.

Innovation Solution

Implementing structured data filtering within the memory device, such as SSDs, by using a bitmap to identify and drop un-related data early in the query process, offloading data filtering operations to SSD firmware, and utilizing a bitmap scan engine to filter data based on query conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the DBMS reads all pages of a column from the SSD to perform filtering operations, then the filtering accuracy is improved, but the processor time and memory space consumption increase significantly

Engineering Contradiction:
Improvefiltering accuracyVSAvoidprocessor time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by generating and sending a bitmap from the host device to the memory device before the actual data reading operation. This bitmap pre-identifies which data records satisfy the query conditions, allowing the memory device to filter data during the read operation itself rather than requiring the host to read all data and filter it afterward. This resolves the contradiction by maintaining filtering accuracy while reducing processor time through early filtering action.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the filtering function from the host device's processor and memory system and transfers it to the memory device (SSD). By implementing a bitmap filter engine within the memory device that operates on the bitmap to filter data during the read operation, the system removes the burden of filtering large volumes of data from the host processor, thereby reducing processor time while maintaining accurate filtering results.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of information

If the DBMS reads all pages of a column from the SSD, then the data completeness for filtering is improved, but the memory space required for caching and processing increases

Engineering Contradiction:
Improvedata completenessVSAvoidmemory space
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The bitmap is generated and transmitted to the memory device before the data reading operation begins. This preliminary action enables the memory device to filter data during the read operation, ensuring that only relevant data is transferred to the host. This maintains data completeness for filtering while significantly reducing the memory space required, as the host does not need to cache all pages of the column.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The filtering operation is extracted from the host device and implemented within the memory device using a bitmap filter engine. This extraction allows the memory device to perform filtering independently during the read operation, reducing the volume of data that needs to be cached in the host's memory while ensuring that all necessary data for accurate filtering is processed.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If the host device processes and filters data in its own memory, then the filtering flexibility is improved, but the data traffic on the storage interface increases

Engineering Contradiction:
Improvefiltering flexibilityVSAvoiddata traffic
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent extracts the filtering operation from the host device and implements it within the memory device using a bitmap filter engine. This engine uses the bitmap to filter data during the read operation, reducing the amount of data transferred over the storage interface. The filtering flexibility is maintained because the bitmap can be generated based on various query conditions, while the data traffic is reduced by filtering at the source.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The bitmap acts as an intermediary between the query conditions and the data filtering process. The host device generates the bitmap based on query requirements and sends it to the memory device, which then uses this intermediary structure to filter data during the read operation. This mediator approach maintains filtering flexibility while reducing data traffic, as only filtered results are transferred to the host.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If the DBMS caches all pages of a column in the host's memory for scanning and filtering, then the query processing capability is improved, but the cache space requirement increases

Engineering Contradiction:
Improvequery processing capabilityVSAvoidcache space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The bitmap is generated and sent to the memory device before the data reading operation, enabling filtering to occur during the read process itself. This preliminary action maintains query processing capability by ensuring that filtering is performed accurately, while significantly reducing cache space requirements since only filtered results need to be cached in the host's memory rather than all pages of the column.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The filtering function is extracted from the host device's memory system and implemented within the memory device using a bitmap filter engine. This extraction allows the memory device to perform filtering independently during data retrieval, maintaining query processing capability while reducing the cache space required in the host's memory, as less data needs to be retained for filtering operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12524157B2Structured data filtering in memory devices
Publication Date: 2026.01.13 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US12524157B2 patent drawing
  • US12524157B2 patent drawing
  • US12524157B2 patent drawing

AI summary

This application is directed to reading data from a memory device by structured data filtering within the memory device. The memory device is coupled into a host device and includes a plurality of memory blocks. The memory device receives, from the host device, a read request for data in a data structure including a plurality of data records. The read request comprises a bitmap identifying a subset of data records in the plurality of data records. Based on the read request, the memory device reads data from the plurality of memory blocks. The read data is filtered based on the bitmap to generate filtered data. The memory device returns the filtered data to the host device in response to the read request.