Database Object Bundle Splitting for Cyclic Dependency Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database deployment infrastructure faces errors due to cyclic dependencies, where design time artifacts have unresolved dependencies at runtime, leading to execution issues.
Innovation Solution
The method involves splitting large parameter files into subunits and reordering them to ensure correct execution order, maintaining metadata links to the original files, and executing the subunits in a manner that prevents cyclic dependencies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If design time artifacts are organized by semantic properties in parameter files, then ease of operation is improved, but cyclic dependencies are created causing execution errors
Solution Approach 1:
The system divides parameter files into separate subunits based on the artifact types they contain (e.g., CDS views, analytic views, tables). Each subunit is processed independently, allowing the system to resolve dependencies between specific artifact types without creating cyclic dependencies across the entire parameter file. This segmentation maintains semantic organization while enabling reliable execution.
2Ease of operation
If parameter files contain multiple artifact calls in a single file, then ease of operation is improved, but device complexity increases due to dependency resolution requirements
Solution Approach 1:
Parameter files are automatically segmented into subunits based on artifact type boundaries. The deployment system processes each subunit separately, tracking which artifacts have been deployed and making them available to subsequent subunits. This approach maintains the simplicity of using consolidated parameter files while managing complexity through automated segmentation and tracking.
Solution Approach 2:
The system introduces a deployment infrastructure that acts as an intermediary between parameter files and the database management system. This infrastructure automatically analyzes dependency relationships, determines the correct execution order of subunits, and manages the deployment process. Users benefit from simplified operation while the intermediary handles the complexity of dependency resolution.
3Productivity
If design time artifacts are deployed using traditional methods, then device complexity is reduced, but productivity decreases due to manual dependency management
Solution Approach 1:
The system performs preliminary analysis of parameter files to identify all artifact types and their potential dependencies before deployment begins. It pre-segments the parameter files into appropriate subunits and pre-determines the execution order based on artifact type relationships. This preliminary action enables automated, efficient deployment without requiring manual dependency management during execution.
Solution Approach 2:
The deployment system automatically manages the entire dependency resolution process without requiring user intervention. It self-analyzes parameter files, self-segments them into subunits, self-determines execution order, and self-manages the deployment sequence. This self-service capability dramatically improves productivity while the automated nature handles the complexity internally.
Data Source
AI summary
The current subject matter relates to an approach for splitting and rewriting database object bundles into database entities or subunits. For example, cyclical dependencies between a first parameter file and a second parameter file can be identified. The first parameter file can be partitioned into a plurality of subunits comprising a first subunit and a second subunit. The second parameter file, the first subunit, and the second subunit can be reordered to a call order that ensures there are no cyclical dependencies.


