Memory graph query engine with persisted storage
AssigneeMicrosoft Technology Licensing, LLC
InventorsManish SHARMA, Oliver Drew Leonard TOWERS, Jayanta MONDAL, Siddhesh Dilip VETHE, John Robert PAO
Life of this patent
Estimating the term…
Abstract
Various examples of improving an in-memory graph query engine using a persisted storage component are provided. The method includes updating data stored in an in-memory graph query engine and, based on updating the data, converting the data to a plain text form that may be more efficiently stored in the persistent storage component. The method further includes updates to additional in-memory graph query engines from the persistent storage component such that in-memory data stored in the graph query engines is synchronized.
Claims21
(canceled)
A computer-implemented method, comprising:
- receiving, at a first in-memory graph query engine, an electronic request;
- processing, by a first in-memory graph query engine, the received electronic request resulting in modified in-memory data, wherein processing the electronic request comprises:
- based on the electronic request being a request to add data to the first in-memory graph query engine, adding a new node and a new edge between nodes as a key-value pair, the key representing a vertex identifier and a schema element identifier that represents a property name of a node;
- based on the electronic request being a request to update data stored in the first in-memory graph query engine, updating a key-value pair in the first in-memory graph query engine;
- based on the electronic request being a request to remove data stored in the first in-memory graph query engine, deleting a key-value pair from the first in-memory graph query engine;
- based on processing the received electronic request, converting, by a data converter of the first in-memory graph query engine, the modified in-memory data to a document format, the data converter being configured to convert key-value pairs stored in the first in-memory graph query engine, to a document format with native types of a persistent storage;
- and
- outputting the modified in-memory data in the document format to the persistent storage.
A computer-implemented method, comprising:
- causing a first in-memory graph query engine to:
- receive an electronic request;
- process the received electronic request resulting in modified in-memory data, wherein processing the electronic request includes:
- based on the electronic request being a request to add data to the first in-memory graph query engine, adding a new node and a new edge between nodes as a key-value pair, the key representing a vertex identifier and a schema element identifier that represents a property name of a node;
- based on the electronic request being a request to update data stored in the first in-memory graph query engine, updating a key-value pair in the first in-memory graph query engine;
- based on the electronic request being a request to remove data stored in the first in-memory graph query engine, deleting a key-value pair from the first in-memory graph query engine;
- convert, by a data converter, the modified in-memory data to a document format, the data converter being configured to convert key-value pairs stored in the first in-memory graph query engine, to a document format with native types of a persistent storage;
- output the converted in-memory data in the document format to the persistent storage;
- and
- updating persistent storage data at the persistent storage with the converted in-memory data in the document format.
A computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to:
- receive, at a first in-memory graph query engine, an electronic request;
- process, by a first in-memory graph query engine, the received electronic request resulting in modified in-memory data, wherein processing the electronic request comprises:
- based on the electronic request being a request to add data to the first in-memory graph query engine, adding a new node and a new edge between nodes as a key-value pair, the key representing a vertex identifier and a schema element identifier that represents a property name of a node;
- based on the electronic request being a request to update data stored in the first in-memory graph query engine, updating a key-value pair in the first in-memory graph query engine;
- based on the electronic request being a request to remove data stored in the first in-memory graph query engine, deleting a key-value pair from the first in-memory graph query engine;
- based on processing the received electronic request, convert, by a data converter of the first in-memory graph query engine, the modified in-memory data to a document format, the data converter being configured to convert key-value pairs stored in the first in-memory graph query engine, to a document format with native types of a persistent storage;
- and
- output the modified in-memory data in the document format to the persistent storage.
Dependencies are inferred from the claim text.