Distributed Data Processing with Multi-Level Automatic Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Financial instrument processing systems face inefficiencies in reconciling and processing large volumes of documents, particularly in identifying exceptions and minimizing latency, due to the complexity of handling multiple nodes or modules and the need for effective caching strategies.

Innovation Solution

A data processing system with automatic caching at multiple system levels, utilizing a master queue, interface layer caching, and in-flight data tables to prioritize and allocate data processing jobs across user systems, minimizing latency and optimizing resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data processing jobs are distributed across multiple nodes or modules, then processing capacity and reliability are improved, but system complexity and latency increase

Engineering Contradiction:
Improveprocessing capacityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the data processing system into distinct functional modules including a master queue manager, interface layer with cache, in-flight data tables, and multiple user systems. Each module handles specific tasks independently, allowing parallel processing while maintaining clear boundaries that reduce overall system complexity despite distributed architecture

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The interface layer cache acts as an intermediary between the master queue and user systems, buffering data processing jobs and reducing direct communication overhead between components. This mediator layer simplifies the interaction complexity while enabling efficient distributed processing across multiple nodes

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data is cached at multiple system levels, then access speed and latency are improved, but memory usage and system complexity increase

Engineering Contradiction:
Improveaccess speedVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements caching with different characteristics at different system levels: the interface layer cache uses one caching strategy while in-flight data tables use another. Each cache level is optimized for its specific function, allowing efficient memory utilization tailored to local access patterns rather than uniform caching throughout the system

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The caching architecture nests multiple cache levels within each other, with the interface layer cache containing references to data that may also exist in in-flight data tables and master queue. This nested structure allows data to be accessed at multiple levels simultaneously, improving speed while managing memory usage through hierarchical organization

Inventive Principle:
Principle #7Nested doll (Nesting)

3Productivity

If priority-based job selection is implemented, then processing efficiency is improved, but computational overhead increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

Data processing jobs are assigned priority levels and organized in the master queue before being processed. This preliminary classification of jobs by priority allows the system to efficiently select which jobs to process next without performing complex computations during the actual processing phase, reducing real-time computational overhead

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10067869B2System for distributed data processing with automatic caching at various system levels
Publication Date: 2018.09.04 BANK OF AMERICA CORP
  • US10067869B2 patent drawing
  • US10067869B2 patent drawing
  • US10067869B2 patent drawing

AI summary

Embodiments enable distributed data processing with automatic caching at multiple system levels by accessing a master queue of data processing work comprising a plurality of data processing jobs stored in a long term memory cache; selecting at least one of the plurality of data processing jobs from the master queue of data processing work; pushing the selected data processing jobs to an interface layer including (i) accessing the selected data processing jobs from the long term memory cache; and (ii) saving the selected data processing jobs in an interface layer cache of data processing work; and pushing at least a portion of the selected data processing jobs to a memory cache of a first user system for minimizing latency in user data processing of the pushed data processing jobs.