Query Compiler for Record Filtering on Storage Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current compute/storage architectures require unnecessary data movement and processing between host memory and storage devices, leading to inefficiencies in database operations such as select, insert, update, and delete, as data is copied and processed in host device resources before being updated or returned.

Innovation Solution

Implementing a system where database queries are performed directly on data storage devices, with data compression and decompression handled by the storage device's processing cores, allowing filtering and results to be returned to the host without relying on host memory and processing resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is copied to host device memory for processing database operations, then database operations can be performed using host processor resources, but unnecessary data movement and processing time are required

Engineering Contradiction:
Improvedatabase operation efficiencyVSAvoiddata movement time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges the database processing function with the storage device by implementing a query compiler and processing cores directly in the storage device. This allows the storage device to execute database operations (select, insert, update, delete) locally on stored data without requiring data to be copied to host memory, thereby eliminating unnecessary data movement and reducing processing time.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The storage device is equipped with self-service capabilities through integrated processing cores and a query compiler that can independently execute database operations on data stored locally. The storage device serves itself by performing query compilation, data processing, and result generation without relying on external host processor resources for these specific operations.

Inventive Principle:
Principle #25Self-service

2Productivity

If data is copied to host device memory for processing, then host processor resources can be utilized, but power consumption increases due to unnecessary data movement

Engineering Contradiction:
Improveprocessing capabilityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent combines processing capabilities with storage by integrating processing cores and a query compiler into the storage device. This merger enables local execution of database operations, eliminating the need to transfer data to host memory and thereby reducing the energy consumption associated with data movement while maintaining full processing capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The storage device performs self-service processing by executing database operations locally using its own processing cores and query compiler. This self-service approach eliminates the need to consume host processor resources and host memory for these operations, reducing overall system power consumption while maintaining processing capability.

Inventive Principle:
Principle #25Self-service

3Productivity

If compression code is distributed to processing cores and compiled into machine code for decompression and filtering, then queries can be executed directly on storage device, but device complexity increases

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidstorage device complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the query execution process into distinct functional components: a query compiler that translates high-level queries into machine code, processing cores that execute the compiled code, and decompression/filtering units that process the data. This segmentation allows each component to be optimized independently while working together to achieve efficient query execution on the storage device.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11640395B2Query compiler for record filtering
Publication Date: 2023.05.02 SANDISK TECHNOLOGIES LLC
  • US11640395B2 patent drawing
  • US11640395B2 patent drawing
  • US11640395B2 patent drawing

AI summary

A method and apparatus for carrying out a database select, or query, on a data storage device, upon data stored on that device. Data is received from a host and compressed on the data storage device using a compression code developed on the data storage device for the data. When the host issues a database select request on the compressed data, the compression code is distributed to processing cores of the data storage device and compiled, including the select request, into machine code. The machine code is used to decompress the compressed data while filtering the data with the select request. The filtering result is returned to the host.