Calculated Database Fields Definition and Population
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional approaches to specifying and calculating database fields are limited, leading to complex expressions that are difficult to define, debug, and efficiently populate, often requiring redundant calculations and excessive resource usage.
Innovation Solution
A software facility that allows developers to define calculated fields using a procedural programming language, with validation and translation processes to ensure efficiency and reduce resource consumption, enabling the use of less complex and more intuitive expressions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If conventional approaches are used to specify calculated fields, then the fields can be defined, but the expressions become complex and difficult to define, debug, and understand
Solution Approach 1:
The patent segments the calculated field definition into multiple components: base fields, intermediate fields, and final calculated fields. This allows complex calculations to be broken down into manageable pieces that are easier to define, debug, and understand. Each segment can be independently validated and tested.
Solution Approach 2:
The patent introduces a temporal dimension by allowing fields to be defined at different levels (base, intermediate, final) and processed in a structured sequence. This adds an organizational dimension to the expression structure, transforming flat complex expressions into hierarchical, multi-level definitions that are more intuitive.
2Productivity
If conventional approaches are used to populate calculated fields, then the fields can be calculated, but redundant calculations occur and excessive resource usage ensues
Solution Approach 1:
The patent performs preliminary actions by pre-defining base fields and intermediate fields with their calculation logic before the final population phase. This allows the system to prepare calculation plans in advance, identify redundant calculations, and optimize resource usage before actual data processing occurs.
Solution Approach 2:
The patent enables identification and discarding of redundant calculations by tracking which base fields are already loaded in memory. When multiple calculated fields reference the same base fields, the system recovers by reusing the already-loaded data instead of reloading it, thereby reducing resource consumption.
3Adaptability or versatility
If complex expressions are used for calculated fields, then more functionality can be achieved, but debugging and understanding become significantly harder
Solution Approach 1:
By segmenting complex expressions into base fields, intermediate fields, and final calculated fields, the patent makes debugging tractable. Each segment can be independently validated, and errors can be localized to specific segments rather than searching through monolithic complex expressions.
Solution Approach 2:
The patent introduces intermediate fields as mediators between base fields and final calculated fields. These intermediates serve as debugging checkpoints, allowing verification of calculation logic at intermediate stages and making the overall system more transparent and easier to understand.
4Reliability
If conventional database approaches are used, then calculated fields can be stored, but hardware resources are excessively consumed and latency increases
Solution Approach 1:
The patent extracts the calculation logic from traditional database storage approaches and implements it as a separate population process. This separation allows calculations to be performed efficiently using in-memory data structures rather than relying on database computation, reducing latency and hardware resource consumption while maintaining accuracy.
Data Source
AI summary
A facility for defining a calculated distinguished database field is described. The facility receives a formula usable to calculate the value of the distinguished database field for each of a plurality of database rows, the formula expressed as a method in a distinguished procedural programming language. The facility transforms the formula method into a syntax tree for the distinguished procedural programming language. The facility modifies the syntax tree to provide variable context, field projection, runtimetype dynamic property accessors, and/or field path mapping. The facility transforms the modified syntax tree into a second version of the formula method in the distinguished procedural programming language.


