Storing graph data representing workflow management
First Claim
1. A computer-implemented method for storing and displaying application data, the method comprising:
- generating graphs that represent the application data, the graphs having a plurality of nodes that correspond to arguments of triples and connecting edges that represent predicates of the triples, wherein the triples describe business entities and processes operating with the business entities using subjects-predicates-objects, and represent the predicates and the arguments associated with the predicates, andwherein the predicates express relationships or connections between the arguments, which are the subjects and the objects of the triples, with the subjects representing an identifier of the business entities, and the objects are values of properties of the business entities;
storing the predicates in a predicate key-value store;
storing the arguments in argument key-value stores; and
storing links to the argument key-value stores in the predicate key-value store for corresponding predicates stored in the predicate key-value store;
determining, in response to a request for the graph data from a requestor, a set of arguments stored in the argument key-value store, wherein the arguments are linked to the predicates via the predicate key-value store and the links stored therein, wherein the request is used to derive the arguments, andwherein the request is also represented as a triple prior to submitting the request to the predicate key-value store; and
returning the graph data to the requestor and displaying the graph data to the requestor.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for storing complex graph data. The graph data is represented by triples, quadruples, quintuples, etc. In order to speed up storage and retrieval of graph data, the data is stored in a form of triples, quadruples, quintuples, etc. in a B-tree. The B-trees are data structures that allow operations on dynamic data sets. The operations can be search, search for minimum and maximum values, insert, delete, reference to parent or child directory. The tree can be used as a dictionary or as a prioritized chain. The speed of tree operations is proportional to the height. The data is read as blocks from the same location. If a tree node is moved to an operational memory, an allocated memory block is moved and the operation executes very fast.
22 Citations
18 Claims
-
1. A computer-implemented method for storing and displaying application data, the method comprising:
-
generating graphs that represent the application data, the graphs having a plurality of nodes that correspond to arguments of triples and connecting edges that represent predicates of the triples, wherein the triples describe business entities and processes operating with the business entities using subjects-predicates-objects, and represent the predicates and the arguments associated with the predicates, and wherein the predicates express relationships or connections between the arguments, which are the subjects and the objects of the triples, with the subjects representing an identifier of the business entities, and the objects are values of properties of the business entities; storing the predicates in a predicate key-value store; storing the arguments in argument key-value stores; and storing links to the argument key-value stores in the predicate key-value store for corresponding predicates stored in the predicate key-value store; determining, in response to a request for the graph data from a requestor, a set of arguments stored in the argument key-value store, wherein the arguments are linked to the predicates via the predicate key-value store and the links stored therein, wherein the request is used to derive the arguments, and wherein the request is also represented as a triple prior to submitting the request to the predicate key-value store; and returning the graph data to the requestor and displaying the graph data to the requestor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method for storing and displaying application data, the method comprising:
-
generating graphs that represent the application data, the graphs having a plurality of nodes that correspond to arguments of triples and connecting edges that represent predicates of the triples, wherein the triples describe business entities and processes operating with the business entities using subjects-predicates-objects, and represent the predicates and the arguments associated with the predicates, and wherein the predicates express relationships or connections between the arguments, which are the subjects and the objects of the triples, with the subjects representing an identifier of the business entities, and the objects are values of properties of the business entities; storing the predicates in a predicate key-value store; storing arguments in argument key-value stores; storing assigned unique identifiers to statements to the argument key-value stores; storing links to the argument key-value stores in the predicate key-value store for corresponding predicates stored in the predicate key-value store; determining, in response to a request for the graph data from a requestor, a set of arguments stored in the argument key-value store, wherein the arguments are linked to the predicates via the predicate key-value store and the links stored therein, wherein the request is used to derive the arguments, and wherein the request is also represented as a triple prior to submitting the request to the predicate key-value store; and returning the graph data for display to the requestor. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification