Parallel Algorithm Execution via Object Grouping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data management systems face challenges in efficiently analyzing and processing complex business data due to scattered and unstructured data across multiple databases, leading to difficulties in data quality issues and high costs for data maintenance and analysis.
Innovation Solution
The system structures data using object-oriented models, allowing for the grouping of object classes into contexts based on relationships, enabling parallel execution of algorithms across multiple nodes without additional coding, and distributing coded algorithms to nodes for independent execution, facilitating efficient data processing and analysis.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in scattered multiple databases to represent complex business processes, then data completeness and relationships are improved, but data analysis difficulty and cost increase
Solution Approach 1:
The patent segments the distributed data across multiple databases into grouped object classes that can be independently processed. By organizing data into logical groups (contexts) that represent specific business processes or domains, the system maintains data completeness while enabling targeted analysis of specific data subsets, reducing overall analysis complexity.
Solution Approach 2:
The patent introduces an intermediary layer (the object-oriented model with contexts) that sits between the scattered databases and the analysis processes. This intermediary organizes and structures the distributed data, providing a unified view without requiring physical consolidation, thus reducing analysis difficulty while preserving data relationships.
2Ease of manufacture
If algorithms are executed sequentially in single-threaded environment, then coding simplicity is improved, but processing speed and productivity deteriorate
Solution Approach 1:
The patent creates copies of the single-threaded algorithm and distributes them to multiple nodes in the system. Each node executes a copy of the algorithm independently on its assigned data, maintaining the simplicity of the original single-threaded code while achieving parallel execution and improved processing speed across the distributed system.
Solution Approach 2:
The patent transitions from single-threaded sequential execution to multi-node parallel execution by adding a spatial dimension to the processing architecture. The same algorithm is executed simultaneously across multiple independent nodes, transforming the processing from a single-dimensional sequential process to a multi-dimensional parallel process, thereby increasing productivity without complicating the algorithm itself.
3Productivity
If data is structured using object-oriented models with contexts, then data organization and processing efficiency are improved, but system complexity increases
Solution Approach 1:
The patent implements a universal object-oriented framework that can handle multiple types of data and business processes through a common structure. The context-based organization provides a multi-functional system that can process various data types and algorithms uniformly, improving processing efficiency while managing complexity through standardization and reusability.
Data Source
AI summary
Among other things, a machine-based method comprises receiving an application specification comprising one or more algorithms. Each algorithm is not necessarily suitable for concurrent execution on multiple nodes in parallel. One or more different object classes are grouped into one or more groups, each being appropriate for executing the one or more algorithms of the application specification. The executing involves data that is available in objects of the object classes. A user is enabled to code an algorithm of the one or more algorithms for one group in a single threaded environment without regard to concurrent execution of the algorithm on multiple nodes in parallel. An copy of the coded algorithm is distributed to each of the multiple nodes, without needing additional coding. The coded algorithm is caused to be executed on each node in association with at least one instance of a group independently of and in parallel to executing the other copies of the coded algorithm on the other nodes.


