Graph-Based Entity-Relationship Database Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems lack a general-purpose mechanism for performing operations like deletion and copying of complex components across different types, requiring specific mechanisms for each component type, which is inefficient and time-consuming.
Innovation Solution
A method using a graph-based approach on an entity-relationship database that leverages metadata associated with relationship types to perform actions such as cascade delete and cloning, allowing for generalized operations across various component types without manual coding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If specific mechanisms are created for each component type to handle deletion and copying operations, then the operations can be performed correctly for each component type, but the system complexity increases and maintenance effort increases
Solution Approach 1:
The patent creates a universal mechanism that handles deletion and copying operations for all component types through a single graph-based approach. The system uses entity-relationship graphs with metadata-driven relationship type definitions to perform operations uniformly across different component types (reports, strategies, etc.), eliminating the need for separate mechanisms for each component type while maintaining correctness through the standardized graph traversal and relationship processing
2Reliability
If specific mechanisms are created for each component type, then each component type can be handled appropriately, but the time and effort to create and maintain each mechanism is duplicated
Solution Approach 1:
The system implements a single universal mechanism that processes all component types through standardized graph-based operations. The metadata associated with relationship types contains the logic for determining how operations propagate through relationships, eliminating the need to create and maintain separate mechanisms for each component type while still handling component-type-specific requirements appropriately
3Ease of operation
If manual coding is performed for each component type operation, then precise control over each operation is achieved, but productivity decreases and extension to additional component types becomes difficult
Solution Approach 1:
The system enables self-service operations where the graph-based mechanism automatically determines how to perform deletion and copying operations for any component type by querying the entity-relationship database and following the relationships defined in the metadata. The system automatically traverses the graph structure, identifies related entities, and executes operations without requiring manual coding for each component type, thereby improving productivity and ease of extension
Solution Approach 2:
The system uses metadata parameters associated with relationship types to control the behavior of operations. By changing the metadata configuration for different relationship types, the system adapts the same core mechanism to handle different component types appropriately, providing precise control through parameter configuration rather than manual coding
Data Source
AI summary
A method and apparatus for performing actions of a graph-based activity on a subset of an entity-relationship database, wherein the database has entity instances related by relationship instances. Each relationship instance is associated with a relationship type. Each relationship type has associated metadata. Method steps include identifying an entity instance in the entity-relationship database upon which the action is to be performed, performing the action, determining one or more entity instances related to the identified entity instance, and for each determined entity instance, determining the relationship type of the relationship instance relating the determined entity instance to the identified entity instance, and determining, based upon the metadata associated with the relationship type, whether the action is to be performed on the determined entity instance, and repeating the method steps for each entity instance for which it is determined that the action is to be performed on that instance.


