Binary Code Matching for Balanced Data Partitioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data partitioning methods, such as list partitioning, range partitioning, and hash partitioning, often result in unbalanced data distribution across partitions, leading to inefficiencies in data processing and difficulties in dynamic adjustments and data migration.

Innovation Solution

The method involves using binary code matching to determine data partitions by reversing the order of bits in the binary code of a partition key value, allowing for more balanced data distribution and dynamic adjustments, including redistribution and merging of partitions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If list partitioning or range partitioning is used, then data can be divided into partitions, but data volume distribution among partitions becomes unbalanced

Engineering Contradiction:
Improvedata processing efficiencyVSAvoiddata volume balance
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent changes the partitioning parameter from direct data value comparison (list/range partitioning) to hash function output comparison. By transforming the partition key through a hash function, the system achieves balanced data distribution while maintaining partitioning efficiency. The hash function maps data values to a standardized range, ensuring uniform distribution across partitions.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces a hash function as an intermediary between the original data values and the partitioning decision. This intermediary transforms arbitrary data values into a standardized format that can be evenly distributed across partitions, solving the imbalance problem without requiring direct comparison of original data values.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Manufacturing precision

If hash partitioning is used, then data distribution becomes balanced, but difficulty in migration of existing data increases

Engineering Contradiction:
Improvedata volume balanceVSAvoiddata migration difficulty
Core Design Contradiction:
Manufacturing precisionVSEase of manufacture

Solution Approach 1:

The patent designs the hash function to be universally applicable across different partitioning scenarios and data types. The same hash function can be used for initial partitioning, dynamic partition adjustments, and data migration, providing a consistent mechanism that simplifies operations rather than complicating them.

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

3Productivity

If traditional partitioning methods are used, then data can be stored in partitions, but dynamic adjustments and merging of partitions become difficult

Engineering Contradiction:
Improvedata processing efficiencyVSAvoiddynamic adjustment capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic partitioning where partition boundaries are not fixed but can be adjusted based on data distribution and access patterns. The hash function allows for flexible re-partitioning by changing the hash function parameters or selecting different hash functions, enabling the system to adapt to changing requirements without rigid constraints.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10747781B2Determination of data partition
Publication Date: 2020.08.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10747781B2 patent drawing
  • US10747781B2 patent drawing
  • US10747781B2 patent drawing

AI summary

Partitioning a set of data using a binary format to more evenly distribute data values across a set of data partitions. By using a system of matching binary indices in a “back to front” manner, data values stored in or associated with data partitions are more evenly balanced.