Multidimensional Data Cube for Relational Database Transaction Acceleration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Enterprise Resource Planning software faces challenges in managing large volumes of transactions efficiently, leading to increased man-hours and potential operator errors in financial accounting systems, especially for large organizations with numerous departments and subsidiaries.
Innovation Solution
A method utilizing a relational database system to store financial ledgers and prepopulate a multidimensional data cube with aggregated balances, allowing for accelerated execution of transactions by querying the data cube for result values and generating accounting journal entries, which are then posted back to the ledgers, updating the data cube and maintaining real-time aggregated balances.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional relational database systems are used to manage financial ledgers, then data accuracy and reliability are maintained, but processing speed and productivity deteriorate when handling large volumes of transactions
Solution Approach 1:
The patent creates a copy of the financial ledger data in a multidimensional array structure that mirrors the relational database. This copy allows for rapid processing of transactions without affecting the integrity or accuracy of the original relational database system. The multidimensional array serves as a temporary workspace for batch processing while the relational database maintains the authoritative record.
Solution Approach 2:
The system pre-populates the multidimensional array with data from the relational database before batch processing begins. This preliminary action prepares the data in a format optimized for rapid mathematical operations, eliminating the need to query and aggregate data during the actual transaction processing phase.
2Extent of automation
If manual data entry is used to maintain financial accounting systems, then data accuracy can be monitored, but labor costs and man-hours increase significantly
Solution Approach 1:
The system performs automated batch processing of transactions using the multidimensional array structure, which automatically calculates account balances and generates journal entries without requiring manual intervention. The mathematical operations on the array structure inherently maintain data integrity through consistent aggregation and balancing.
Solution Approach 2:
The patent replaces manual mechanical data entry and calculation processes with automated computational operations on the multidimensional array. The system uses mathematical operations on the array structure to automatically perform what previously required manual accounting calculations, thereby eliminating operator errors and reducing labor requirements.
3Measurement precision
If complex aggregation calculations are performed during transaction processing, then accurate financial reports are generated, but computational overhead and processing time increase
Solution Approach 1:
The system pre-calculates and stores aggregated balances in the multidimensional array structure during the pre-population phase. When batch transactions are processed, these pre-computed aggregates are readily available for immediate use, eliminating the need to perform complex aggregation calculations during the time-critical transaction processing phase.
Solution Approach 2:
The patent segments the data processing into distinct phases: pre-population of the multidimensional array with pre-computed aggregates, batch processing using these pre-computed values, and subsequent updates. This segmentation allows computationally intensive aggregation operations to be performed separately from time-critical transaction processing.
Data Source
AI summary
A method of accelerating transactions for a relational database using a pre-populated multidimensional data cube includes pre-populating the multidimensional data cube based on values from the relational database system; executing one or more transactions using values in the multidimensional data cube instead of using the values from the relational database system; generating one or more entries that update the relational database system using results generated from executing the one or more transactions; posting the one or more entries to the relational database system; and repopulating the multidimensional data cube based on values from the relational database system that changed as a result of posting the one or more entries to the relational database system.


