Field Specialization for Database Cache Pressure Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Relational database management systems (DBMS) face inefficiencies due to their generality, which is achieved through multiple layers of indirection and sophisticated code logic, and there is a need to enhance efficiency by exploiting invariant values during execution, particularly in extending field specialization beyond the source code of applications to data sources themselves across various domains.

Innovation Solution

The introduction of an ecosystem specification that enables field specialization by capturing input, intermediate, and final data sources along with multiple applications involved in computing, allowing the flow of invariant values to be extended beyond the source code to data sources, and the implementation of novel run-time code placement algorithms like MaxResidency to minimize cache pressure and optimize query evaluation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If relational DBMS uses multiple layers of indirection and sophisticated code logic to achieve generality, then adaptability is improved, but device complexity increases

Engineering Contradiction:
ImprovegeneralityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts invariant values from runtime execution and uses them to generate specialized code versions, separating the general DBMS code from specific invariant instances. This allows the system to maintain generality in the base code while achieving specialization through extracted invariant applications.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies field specialization to specific fields or columns where invariants exist, rather than generalizing the entire DBMS. By specializing only the necessary portions of code based on local invariant properties, the system achieves adaptability improvements without proportionally increasing overall complexity.

Inventive Principle:
Principle #3Local quality

2Productivity

If field specialization is applied to exploit runtime invariants, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidspecialization system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs field specialization at runtime by pre-generating specialized code versions based on detected invariant values. This preliminary action allows the system to prepare optimized code paths before query execution, improving productivity without requiring complex static analysis during compilation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The DBMS system automatically detects runtime invariants and generates specialized code versions without external intervention. The system serves itself by identifying optimization opportunities and applying specialization transformations autonomously, improving productivity while managing complexity through self-contained automation.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If field specialization extends to data sources beyond source code, then adaptability is improved, but difficulty of detecting and measuring increases

Engineering Contradiction:
Improvedomain applicabilityVSAvoidinvariant detection complexity
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent creates a universal field specialization framework that can detect and exploit invariants across multiple application domains and data sources. The same core mechanism handles invariants from relational databases, NoSQL databases, files, and network sources, improving adaptability while managing detection complexity through a unified approach.

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

Data Source

PatentUS10733099B2Broadening field specialization
Publication Date: 2020.08.04 DATAWARE VENTURES LLC
  • US10733099B2 patent drawing
  • US10733099B2 patent drawing
  • US10733099B2 patent drawing

AI summary

A method to minimize cache pressure using slot pressure profile (SPP)-guided Algorithm includes generating an intermediate SPP from a binary code of a DBMS. The generated intermediate SPP is received and a reference SPP is output. The reference SPP has a value assigned for each cache slot in a cache, whereby a cache slot value is indicative of cache pressure. The reference SPP is accepted and a candidate slot list related to the cache is produced by sorting the values in the reference SPP. A slot number among the candidate slot list is decided and passed to find an open memory address mapping to the decided slot number for a bee code, the bee code being a specialized version of a DBMS function created and loaded into the cache at run-time. A query with the bee code is executed using the open memory address found.