Hardware-Assisted Multi-Table Database Shared Memory Footprint

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for accessing multiple databases require large amounts of high-performance storage, leading to increased fabrication and operational costs due to the need for worst-case database size allocations, which is inefficient and cost-prohibitive.

Innovation Solution

A hardware-assisted multi-table database system with a shared memory footprint, where logical table identifiers are stored in high-speed registers and other data fields in RAM, allowing unified access to multiple databases with a reduced memory footprint by targeting average-case database sizes and using fixed-sized records and fields for efficient access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate databases are stored in respective separate data structures with worst-case database size allocations, then each database can avoid memory pressure and maintain performance, but the total memory footprint increases significantly and becomes cost-prohibitive

Engineering Contradiction:
Improvedatabase performanceVSAvoidmemory footprint
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent combines multiple separate database tables into a unified data structure where multiple logical tables share a common memory pool. Instead of allocating separate worst-case memory for each database, the system creates a shared memory footprint that serves multiple databases simultaneously, reducing total memory requirements while maintaining performance through unified management

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified data structure serves multiple functions by supporting access to multiple logical databases through a single memory allocation. The system uses logical table identifiers to route operations to the appropriate logical table within the shared memory space, allowing one memory structure to fulfill the roles of multiple separate databases

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If high performance storage tiers with larger allocations are used to meet increasing workload demands, then database performance improves, but fabrication and operational costs increase

Engineering Contradiction:
Improvedatabase performanceVSAvoidmemory allocation
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system changes the memory allocation parameter from fixed worst-case sizes to a dynamic shared pool that adapts to actual usage patterns. By targeting average-case database sizes and allowing multiple databases to share the same memory space, the system optimizes the balance between performance and resource utilization, avoiding over-provisioning

Inventive Principle:
Principle #35Parameter changes

3Speed

If multiple databases are accessed with separate allocations, then each database maintains optimal performance, but the hardware requirements and fabrication costs increase

Engineering Contradiction:
Improveaccess speedVSAvoidhardware requirements
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system segments the unified data structure into multiple logical tables using logical table identifiers stored in registers. Each database operation is quickly filtered to relevant records by identifying the appropriate logical table, maintaining fast access speeds while using a single shared memory footprint instead of multiple separate hardware allocations

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11086852B2Hardware-assisted multi-table database with shared memory footprint
Publication Date: 2021.08.10 SANDISK TECHNOLOGIES LLC
  • US11086852B2 patent drawing
  • US11086852B2 patent drawing
  • US11086852B2 patent drawing

AI summary

Disclosed are systems and methods for providing an improved hardware-assisted multi-table database with reduced memory footprint. A method includes receiving a request to perform an operation on a selected logical table of a plurality of logical database tables. The method also includes accessing a data structure comprising a plurality of records each including: a logical table identifier corresponding to one of the plurality of logical database tables, wherein the logical table identifier is accessed from a register, and at least one sort key. The method also includes performing the operation using one or more sort criteria, wherein the one or more sort criteria are maintained for the selected logical table using the at least one sort key of the plurality of records corresponding to the selected logical table. The method also includes updating the data structure to reflect the performed operation.