Database Compression User-Defined Data Types

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data compression techniques in database systems are inefficient, particularly for user-defined data types, as they often rely on brute force compression of entire data blocks or specific value compression, failing to optimize compression for all data values stored in tables.

Innovation Solution

The implementation of user-defined data types (UDTs) with associated compression routines, such as CompressUDT, which includes data structures like Kind and PCTCompressed, and methods like AlterCompression() and GetCompressionDensity(), allows for tailored compression algorithms to be applied to specific data objects, enhancing compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If brute force compression is applied to entire data blocks, then data storage space is reduced, but compression efficiency is poor for all data values

Engineering Contradiction:
Improvedata storage spaceVSAvoidcompression efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent applies different compression routines to different data values based on their specific characteristics rather than uniformly compressing entire data blocks. Each user-defined data type can have its own optimized compression routine, achieving local optimization for specific data patterns while maintaining overall compression effectiveness.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the approach from fixed block-based compression to variable compression based on data type parameters. By associating compression routines with user-defined data types, the system dynamically selects appropriate compression parameters and methods based on the specific data being compressed, improving overall compression efficiency.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If compression is applied to specific data values like null and most frequently used values, then compression is available for certain data values, but it is not available for other data values stored in tables

Engineering Contradiction:
Improvecompression availabilityVSAvoidstorage efficiency
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent creates a universal compression framework where user-defined data types can have associated compression routines. This allows compression to be universally applied across all data values by defining appropriate compression routines for each data type, rather than being limited to specific values like null or frequent values.

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

Solution Approach 2:

The patent introduces dynamic compression capability where the compression routine is selected based on the user-defined data type of the data being compressed. This dynamic approach allows the system to adapt compression methods to match the specific characteristics of each data type, ensuring both availability and efficiency.

Inventive Principle:
Principle #15Dynamics

3Productivity

If user-defined data types with compression routines are implemented, then compression efficiency is optimized for all data values, but system complexity increases

Engineering Contradiction:
Improvecompression efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the compression functionality into separate user-defined data type definitions and associated compression routines. This segmentation allows the complexity to be distributed and managed individually for each data type rather than implementing a single complex universal compression system, making the overall system more manageable despite the added functionality.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8103619B1Compressing data stored in a database system
Publication Date: 2012.01.24 TERADATA US INC
  • US8103619B1 patent drawing
  • US8103619B1 patent drawing
  • US8103619B1 patent drawing

AI summary

In a database system, compression user-defined data types (UDTs) are defined to enable compression of data. Each compression UDT is associated with one or more UDT methods to compress data according to one or more respective compression algorithms. Also, one or more data structures are associated with data stored according to each compression UDT to store values pertaining to the compression of the data.