IP Library Granted Patent US 11,734,318
Granted Patent B1
US 11,734,318 · App. 18/053,728 · Granted Aug 22, 2023

Superindexing systems and methods

Inventor: Robert Winslow (Oakland, CA)
Assignee: ServiceNow, Inc.
G06F16/31G06F16/2246G06F16/3346G06F16/353G06F16/319G06F18/2321G06F18/2413G06F30/27G06F40/44
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,734,318
App. No.
18/053,728
Granted
Aug 22, 2023
Kind
B1
Abstract

Embodiments of the present disclosure are directed to systems and methods for managing a database and performing database operations. An exemplary method in accordance with embodiments of this disclosure comprises: receiving a request to perform one or more database operations on a dataset comprising one or more data items; inputting the dataset into a statistical model, wherein the statistical model is configured to identify one or more storage locations associated with the one or more data items based on a similarity between one or more properties of the one or more data items; receiving the one or more storage locations associated with the one or more data items; updating the one or more data items based on the received one or more storage locations; and performing the one or more database operations on the one or more updated data items based on the one or more storage locations.

Claims (39)

1. A computer-implemented method for managing a database and performing a database operation comprising:

receiving a request to perform one or more database operations on a dataset comprising one or more data items;

inputting the dataset into a clustering model, wherein the clustering model is configured to identify one or more storage locations associated with the one or more data items based on a similarity between one or more properties of the one or more data items;

receiving the one or more storage locations associated with the one or more data items;

updating the one or more data items based on the received one or more storage locations; and

performing the one or more database operations on the one or more updated data items based on the one or more storage locations.

2. The method of claim 1 , wherein the one or more database operations comprises a storage operation.

3. The method of claim 1 , further comprising generating a database indexing structure based on the received one or more storage locations.

4. The method of claim 1 , wherein the clustering model is configured to group the one or more data items into one or more clusters based on the similarity between the one or more properties, and wherein the one or more storage locations is further based on a relationship between the one or more clusters.

5. The method of claim 1 , further comprising determining a property of a data item of the one or more data items.

6. The method of the claim 5 , wherein determining the property comprises inputting the one or more data items into a further statistical model to determine the property.

7. The method of claim 5 , wherein the property comprises at least one of a content of the data item, a term frequency-inverse document frequency (TF-IDF) of the data item, a value indicative of a textual similarity of the data item to a second data item, a likelihood of co-occurrence of the one or more data items in a client query, or a combination thereof.

8. The method of claim 1 , wherein the similarity between the one or more properties of the one or more data items comprises a likelihood of co-occurrence of the one or more data items in a client query.

9. The method of claim 1 , further comprising collecting one or more performance metrics of the clustering model based on at least one of a performance of the clustering model during the storing the one or more updated data items and a performance of the clustering model during a subsequent database operation.

10. The method of claim 9 , further comprising training the clustering model based on the collected one or more performance metrics.

11. The method of claim 1 , wherein the clustering model is an untrained clustering model.

12. The method of claim 1 , further comprising:

inputting training inputs into an untrained clustering model; and

training the untrained clustering model using the training inputs to obtain the clustering model.

13. The method of claim 12 , wherein the training inputs comprises one or more model structures, one or more prior beliefs, training data, one or more objective functions, one or more database operations, and one or more training procedures.

14. The method of claim 13 , wherein the one or more model structures comprise, a regression model, a classification model, a reinforcement learning model, a deep learning model, a Bayesian network model, a sampling model, or a combination thereof.

15. The method of claim 13 , wherein the one or more prior beliefs comprise an expected distribution of data, constraints placed on the clustering model, or a combination thereof.

16. The method of claim 12 , wherein the training data corresponds to a first data type and the dataset corresponds to a second data type, the second data type different from the first data type.

17. A system for managing a database, comprising:

one or more processors;

a memory; and

one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving a request to perform one or more database operations on a dataset comprising one or more data items;

inputting the dataset into a clustering model, wherein the clustering model is configured to identify one or more storage locations associated with the one or more data items based on a similarity between one or more properties of the one or more data items;

receiving the one or more storage locations associated with the one or more data items;

updating the one or more data items based on the received one or more storage locations; and

performing the one or more database operations on the one or more updated data items based on the one or more storage locations.

18. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of one or more electronic devices, cause the electronic devices to perform a method comprising:

receiving a request to perform one or more database operations on a dataset comprising one or more data items;

inputting the dataset into a clustering model, wherein the clustering model is configured to identify one or more storage locations associated with the one or more data items based on a similarity between one or more properties of the one or more data items;

receiving the one or more storage locations associated with the one or more data items;

updating the one or more data items based on the received one or more storage locations; and

performing the one or more database operations on the one or more updated data items based on the one or more storage locations.

19. The computer-implemented method of claim 1 , wherein the dataset is a key-value set.

Assignments (2)
MERGER Recorded Apr 10, 2023
From: ERA SOFTWARE, INC.
To: SERVICENOW DELAWARE LLC
Reel/Frame 063273/0479 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2023
From: WINSLOW, ROBERT
To: ERA SOFTWARE, INC.
Reel/Frame 062433/0485 →
Continuity (2)
Provisional Application 63277150 · Nov 8, 2021
Provisional Application 63277128 · Nov 8, 2021