MapReduce Resource Allocation for Unstructured Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing infrastructure faces challenges in efficiently processing large volumes of unstructured data, which are not formatted according to typical commercial databases, leading to inefficiencies in data processing.

Innovation Solution

The MapReduce framework is employed, utilizing a distributed computing platform with a master node and multiple slave nodes to divide jobs into map tasks and reduce tasks, executed in parallel, along with a resource allocator that determines resource allocations based on job profiles and performance goals to optimize processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing infrastructure is used to process large volumes of unstructured data, then data processing can be performed, but processing efficiency is insufficient

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the data processing task into two distinct phases: map tasks that process input data independently to produce intermediate results, and reduce tasks that aggregate intermediate results to produce final output. This segmentation allows parallel execution of multiple map tasks across distributed nodes, significantly improving processing efficiency for large volumes of unstructured data

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a distributed computing dimension by deploying map tasks across multiple slave nodes in parallel, transforming a single-threaded processing approach into a multi-threaded distributed architecture. This dimensional expansion enables simultaneous processing of different data partitions, reducing overall processing time

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If more resources are allocated to jobs, then processing speed increases, but resource utilization efficiency may decrease

Engineering Contradiction:
Improveprocessing speedVSAvoidresource utilization efficiency
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The resource allocator dynamically determines resource allocations for map tasks and reduce tasks based on job profiles and performance goals. The system adjusts resource distribution in real-time, allocating more resources to tasks that are bottlenecks and fewer resources to tasks that can proceed independently, optimizing both processing speed and resource utilization efficiency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes resource allocation parameters dynamically based on job characteristics and performance requirements. By adjusting the number of map slots and reduce slots allocated to each job based on its profile, the system optimizes processing speed while avoiding waste of computational resources

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8799916B2Determining an allocation of resources for a job
Publication Date: 2014.08.05 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8799916B2 patent drawing
  • US8799916B2 patent drawing
  • US8799916B2 patent drawing

AI summary

A job profile describes characteristics of a job. A performance parameter is calculated based on the job profile, and using a value of the performance parameter, an allocation of resources is determined to assign to the job to meet a performance goal associated with a job.