Non-Volatile Storage Device With Variable-Sized Logical Pages
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database operations in non-volatile data storage devices are often I/O-intensive, consuming significant data bandwidth and requiring inefficient data transfer, as existing systems lack the ability to customize data access to match the size and structure of database units, leading to suboptimal performance.
Innovation Solution
A non-volatile data storage device configured with variable-sized logical pages that can be customized to match individual data units within a database structure, allowing for selective data access and skipping of unnecessary data reads, thereby reducing data transfer and enhancing database operation efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If fixed-size data pages are used in traditional storage systems, then data is stored in uniform blocks, but database operations require reading and transferring large amounts of unnecessary data, reducing operation speed
Solution Approach 1:
The patent segments database data into variable-sized logical pages that match the actual size of database tuples rather than using fixed-size pages. This segmentation allows the storage system to read and transfer only the specific data pages needed for database operations, eliminating the need to transfer entire fixed-size blocks that contain unnecessary data. The variable-sized pages are organized in a mapping structure that enables direct access to required data based on database query requirements.
Solution Approach 2:
The patent applies local quality by making each logical page size adaptable to the specific size of the database tuples it contains. Instead of using a uniform page size throughout the storage system, each page is locally optimized to match the actual data it stores. This allows database operations to access precisely the data needed without reading surrounding unnecessary data, thereby reducing I/O operations and improving query performance.
2Productivity
If variable-sized logical pages are implemented to match database tuple sizes, then data access efficiency improves, but storage device complexity increases
Solution Approach 1:
The patent implements preliminary action by pre-organizing variable-sized logical pages in the storage device according to database tuple sizes before database operations are executed. A mapping structure is pre-established that links logical page sizes to database tuple sizes, enabling the storage device to quickly identify and retrieve the exact pages needed for any given database operation. This preliminary organization eliminates the need for complex runtime calculations and data movement.
Solution Approach 2:
The patent introduces an intermediary mapping structure that sits between the physical storage media and the database operations. This mapping layer translates database tuple size requirements into corresponding logical page identifiers, allowing the storage device to efficiently locate and retrieve the required data pages without requiring complex real-time analysis. The intermediary structure simplifies the interface between variable-sized pages and database operations.
Data Source
Figure 1A
Figure 1B
Figure 2
AI summary
Disclosed herein are data storage device embodiments for accelerating database operations and associated methods. In one embodiment, the data storage device includes a controller; an array of one or more solid-state memory storage devices; a first memory for storing processor executable instructions associated with database operations; and a second memory for storing data related to the database operations; wherein the controller is configured to execute the instructions to: cause data to be read from the solid-state memory storage devices into the second memory; determine whether the data match a query specified by the instructions; and perform a database operation based on the query match determination.