Single-Module Table Designation for Parallel Database Scalability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Parallel database systems face scalability issues with small tables and single row operations due to skewed distribution of rows across access modules, leading to high coordination overheads and inefficient processing.

Innovation Solution

A database system that allows designation of tables as single-module tables, where rows are collectively assigned to a single access module, reducing coordination overheads and improving processing efficiency by using a processor to dynamically select the owning access module based on processing costs and load balancing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If rows are distributed across multiple access modules in parallel, then processing speed is improved for large tables, but coordination overhead increases for small tables and single row operations

Engineering Contradiction:
Improveprocessing speedVSAvoidcoordination overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system dynamically determines whether to use single-module or multi-module table processing based on the specific operation type and table size. The processor selectively designates tables as single-module tables for small tables and single row operations, while maintaining multi-module distribution for large tables, allowing the system to adapt its processing mode to optimize performance for different workloads

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies different processing strategies to different types of tables and operations. Small tables and single-row operation tables are designated as single-module tables with concentrated row access, while large tables maintain distributed multi-module access. This local differentiation allows each table type to be processed in the most efficient manner for its specific characteristics

Inventive Principle:
Principle #3Local quality

2Productivity

If rows of a small table are distributed across multiple access modules, then parallel access is enabled, but row distribution becomes skewed and processing efficiency decreases

Engineering Contradiction:
Improveparallel access capabilityVSAvoidprocessing efficiency
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

For small tables and tables requiring single row operations, the patent merges all rows into a single access module rather than distributing them across multiple modules. This consolidation eliminates the skew problem inherent in distributing small datasets across many modules and allows the single module to process all rows efficiently without coordination overhead

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If single row operations are processed in a shared nothing MPP system with multiple access modules, then system scalability is maintained, but coordination overhead and messaging between modules increases

Engineering Contradiction:
Improvesystem scalabilityVSAvoidcoordination overhead time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system dynamically selects the appropriate processing mode based on operation characteristics. For single row operations, it designates the table as a single-module table, allowing one access module to handle the entire operation without inter-module messaging. For operations requiring system scalability, the multi-module architecture remains available, creating a flexible system that adapts to different operational requirements

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7792809B2Database system
Publication Date: 2010.09.07 TERADATA US INC
  • US7792809B2 patent drawing
  • US7792809B2 patent drawing
  • US7792809B2 patent drawing

AI summary

There is provided a parallel database system 1. System 1 includes a storage device 2 for maintaining a plurality of rows 3. System 1 also includes a plurality of access modules 4 for accessing in parallel a respectively assigned one or more of rows 3. An interface 5 receives data 6 indicative of a table 7 defined by a selection 8 of rows 3. A processor 9 is responsive to data 6 for selectively designating table 7 to be a single-module table. In this single module table, selection 8 is collectively assigned to an owning one of modules 4, indicated by reference numeral 10.