Data Structure Placement in Hybrid Memory Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage solutions in database management systems face inefficiencies due to the differing performance characteristics of volatile and non-volatile memory, making it challenging to optimize data placement and storage strategies effectively.

Innovation Solution

A method is implemented to determine the optimal memory location for data structures based on access frequency and type, using counters to differentiate between scan and point accesses, and deciding whether to store data in non-volatile memory (NVM) or dynamic random access memory (DRAM) to maximize data placement in NVM without compromising query performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data structures are placed in non-volatile memory (NVM), then storage capacity and persistence are improved, but query performance deteriorates due to different performance characteristics compared to DRAM

Engineering Contradiction:
Improvestorage capacityVSAvoidquery performance
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent applies local quality by differentiating data structure placement based on access patterns. Frequently accessed data structures with random point access patterns are placed in DRAM for high-speed access, while data structures with sequential scan patterns are placed in NVM for cost-effective storage. This selective placement strategy optimizes both performance and storage capacity by matching data location to access characteristics.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements dynamics through runtime determination of data structure placement. The system dynamically analyzes access patterns and decides whether to place each data structure in DRAM or NVM based on observed behavior, rather than using static placement rules. This dynamic approach allows the system to adapt to changing workload characteristics and optimize performance accordingly.

Inventive Principle:
Principle #15Dynamics

2Speed

If data structures are placed in volatile memory (DRAM), then query performance is improved, but storage capacity and persistence deteriorate compared to NVM

Engineering Contradiction:
Improvequery performanceVSAvoidstorage capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies local quality by differentiating data structure placement based on access patterns. Frequently accessed data structures with random point access patterns are placed in DRAM for high-speed access, while data structures with sequential scan patterns are placed in NVM for cost-effective storage. This selective placement strategy optimizes both performance and storage capacity by matching data location to access characteristics.

Inventive Principle:
Principle #3Local quality

3Ease of manufacture

If data structures are placed in non-volatile memory (NVM), then cost per capacity is improved, but access speed deteriorates compared to DRAM

Engineering Contradiction:
Improvecost per capacityVSAvoidaccess speed
Core Design Contradiction:
Ease of manufactureVSSpeed

Solution Approach 1:

The patent applies local quality by differentiating data structure placement based on access patterns. Frequently accessed data structures with random point access patterns are placed in DRAM for high-speed access, while data structures with sequential scan patterns are placed in NVM for cost-effective storage. This selective placement strategy optimizes both performance and storage capacity by matching data location to access characteristics.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements parameter changes by monitoring access pattern characteristics (sequential vs. random, scan vs. point access) and using these parameters to determine optimal storage location. The system changes the storage medium parameter based on observed access behavior, selecting NVM for cost-effective sequential access workloads and DRAM for performance-critical random access workloads.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11789951B2Storage of data structures
Publication Date: 2023.10.17 SAP SE
  • US11789951B2 patent drawing
  • US11789951B2 patent drawing
  • US11789951B2 patent drawing

AI summary

A method, a system, and a computer program product for placement or storage of data structures in memory/storage locations. A type of a data structure for storing data and a type of data access to the data structure are determined. The type of data access includes a first and a second type of data access. A frequency of each type of access to each type of data structure accessed by a query is determined. Using the determined frequency, a number of first type of data accesses to the data structure is compared to a number of second type of accesses to the data structure. The numbers of first and second types of data access are compared to a predetermined threshold percentage of a total number of data accesses to the data structure. Based on the comparisons, a physical memory location for storing data is determined.