Processor-Addressable Memory Database Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database management systems (DBMSs) face challenges in achieving high performance and reducing complexity in application development, particularly in managing data persistence and concurrency, while minimizing hardware costs and avoiding data loss during power outages.

Innovation Solution

The system employs processor-addressable memory to directly allocate and manage database objects, allowing applications to access and modify data without an intermediate layer, using volatile memory as master storage with non-volatile backup to ensure data persistence and implement concurrency controls for efficient data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional DBMS with intermediate layers is used, then data persistence and concurrency control are achieved, but transaction speed and throughput are reduced

Engineering Contradiction:
Improvetransaction throughputVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts and eliminates the intermediate DBMS layer from the system architecture. Applications directly access database objects in processor-addressable memory without going through traditional DBMS intermediaries, thereby removing the performance bottleneck while maintaining data persistence through backup mechanisms

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent merges the database storage function directly into processor-addressable memory, combining what were previously separate components (application memory and database storage) into a unified memory space that eliminates data copying and intermediate access layers

Inventive Principle:
Principle #5Merging (Combining)

2Speed

If volatile memory is used as master storage, then transaction speed is improved, but data loss risk during power outages increases

Engineering Contradiction:
Improvetransaction speedVSAvoiddata persistence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements preliminary backup action by continuously maintaining copies of database objects in non-volatile backup storage while they reside in volatile processor-addressable memory. This preliminary backup ensures that even if power is lost, data can be recovered from the backup copies

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates and maintains duplicate copies of database objects in both volatile processor-addressable memory (for fast access) and non-volatile backup storage (for data persistence). This copying strategy allows the system to enjoy the speed of volatile memory while protecting against data loss through redundant backup copies

Inventive Principle:
Principle #26Copying

3Device complexity

If direct memory access is implemented, then hardware costs are reduced, but development complexity increases

Engineering Contradiction:
Improvehardware requirementsVSAvoidapplication development ease
Core Design Contradiction:
Device complexityVSEase of manufacture

Solution Approach 1:

The patent makes processor-addressable memory serve multiple functions simultaneously: it acts as both application working memory and database storage medium. This multi-functionality eliminates the need for separate database hardware components while maintaining full database functionality through software-based persistence mechanisms

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

Data Source

PatentUS9690810B2Systems and methods for managing databases
Publication Date: 2017.06.27 STARCOUNTER
  • US9690810B2 patent drawing
  • US9690810B2 patent drawing
  • US9690810B2 patent drawing

AI summary

Systems and methods for managing databases are disclosed. One disclosed system includes a processor-addressable physical memory and a processor in communication with said processor-addressable physical memory and configured to execute an environment and to allocate an environment memory to said environment. In such a system, said environment is configured to maintain a database of objects in a database memory within said environment memory. An application executes in an application memory within said environment memory, and upon instantiation of a database object, the application environment allocates memory in said database for said database object, the database providing master storage for said database object. Upon an instruction to obtain said database object from said application, the environment provides to said application a reference to said database object; and upon an access operation on said database object by said application, provides to said application direct access to data of said database object.