Multi-Input SQL-MR Partitioning for Parallel Data Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional database systems, including SQL and MapReduce, are cumbersome when dealing with voluminous data and lack the ability to efficiently process complex cross-analysis of multiple data sets, requiring programmers to implement complex primitives and modifications for schema changes.

Innovation Solution

A system and method that allows processing nodes to partition and distribute multiple data tables based on a partition key, enabling execution of functions across these partitions to facilitate multi-input SQL-MR functions, which can operate on multiple data tables, enhancing data analysis capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If traditional SQL database systems are used to query voluminous data, then data processing is straightforward, but the system becomes cumbersome when dealing with massive amounts of data

Engineering Contradiction:
Improveamount of dataVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements Map-Reduce technology that divides the database into multiple partitions and processes them in parallel across multiple machines. Each machine handles a subset of data independently, transforming the single-point-of-processing bottleneck into a distributed parallel processing architecture that scales with data quantity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer between the query language and the physical data storage. This intermediary handles the complexity of parallel task scheduling, fault tolerance, redistribution and grouping of intermediate results, allowing users to focus on data analysis while the system manages the computational overhead.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If Map-Reduce technology is used to analyze massive databases, then flexible programming languages can be used, but no built-in general-purpose data processing primitives are provided

Engineering Contradiction:
Improveprogramming flexibilityVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges Map-Reduce functionality with traditional SQL capabilities by implementing both map functions and reduce functions as first-class citizens in the SQL-MR system. This allows users to combine familiar SQL operators (joins, filters, aggregators) with flexible Map-Reduce programming, creating a unified interface that provides both programming flexibility and built-in processing primitives.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal query processing framework where the same SQL-MR infrastructure handles both traditional SQL queries and complex Map-Reduce analyses. The system provides a single interface that can execute various data processing tasks, eliminating the need for separate tools or languages for different analytical purposes.

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

3Ease of operation

If Map-Reduce provides no built-in data processing primitives, then programmers must implement all functions, but this makes the query language cumbersome and lacks declarative interface

Engineering Contradiction:
Improvequery language usabilityVSAvoidprogramming overhead
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements a query optimizer that automatically generates execution plans for SQL-MR queries without requiring manual intervention. The system self-optimizes by selecting appropriate partitioning strategies, scheduling tasks, and managing resources, freeing the programmer from parallel execution details while maintaining ease of operation through declarative SQL syntax.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If Map-Reduce programs are used, then complex analysis can be performed, but schema changes require map and/or reduce code changes

Engineering Contradiction:
Improvedata analysis capabilityVSAvoidcode maintenance
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent implements a dynamic query processing system where the execution plan is generated and optimized at runtime based on the actual schema and data distribution. This dynamic adaptation allows the system to handle schema changes without requiring code modifications, as the query optimizer automatically adjusts the execution strategy to accommodate structural changes in the underlying data.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10452632B1Multi-input SQL-MR
Publication Date: 2019.10.22 TERADATA CORP
  • US10452632B1 patent drawing
  • US10452632B1 patent drawing
  • US10452632B1 patent drawing

AI summary

A system may include an array of storage devices configured to store a data. The system may further include an array of processing nodes in communication with the array of storage devices. The array of processing nodes may receive a request to perform at least one task associated with the data. The request may include a function call to a function configured to operate on a first data table and a second data table included in the data. The array of processing nodes may partition the first data table among respective subsets of the processing nodes based on a partition key. The array of processing nodes may distribute the second data table among the partitions based on the partition key. The array of processing nodes may execute the function on the first data table and the second data table at each of the partitions. A method and computer-readable medium may also be implemented.