IP Library Granted Patent US 10,133,783
Granted Patent B2
US 10,133,783 · App. 15/484,983 · Granted Nov 20, 2018

Systems and methods for constraint driven database searching

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 10,133,783
App. No.
15/484,983
Granted
Nov 20, 2018
Kind
B2
Abstract

Systems and methods are provided for performing constraint driven database searching. At least one constraint is received for a search of one or more databases comprising one or more datasets, each comprising multiple entry fields. The one or more databases comprising the one or more datasets may be accessed and searched based on the constraint to identify one or more dataset entries that contain the at least one constraint in one of multiple entry fields. A visual representation of the identified dataset entries may be provided to the user as results of the constraint driven database search. Additional constraints may be accepted to further narrow the results of constraint driven database search. The results may be exported and made accessible for later retrieval and/or cached for use in subsequent searches.

Claims (82)

1. A system comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the system to:

obtain access to a plurality of datasets;

receive at least one constraint term provided by a user, the at least one constraint term received in response to the user inputting the at least one constraint term into a cell of a table presented in a graphical user interface;

identify, in response to receiving the at least one constraint term, at least a first dataset and a second dataset from the plurality of datasets, wherein the identified first dataset includes at least one first dataset entry having the at least one constraint term in a first set of entry fields and the identified second dataset includes at least one second dataset entry having the at least one constraint term in a second set of entry fields;

identify the at least one first dataset entry including the at least one constraint term and the at least one second dataset entry including the at least one constraint term;

update one or more column names of the table based on the at least one first dataset entry of the first dataset and the at least one second dataset entry of the second dataset; and

cause the graphical user interface to present the at least one first dataset entry of the first dataset and the at least one second dataset entry of the second dataset in corresponding rows of the table based on the updated one or more column names.

2. The system of claim 1 , wherein the at least one constraint term includes at least a first constraint term and a second constraint term, and wherein to identify the at least one first dataset entry including the at least one constraint term, the system is further caused to:

identify a first plurality of dataset entries of the first dataset having the first constraint term in at least a first entry field of the first set of entry fields;

cache the first plurality of dataset entries in a local memory module;

identify, from the cached first plurality of dataset entries, a second plurality of dataset entries having the second constraint term in at least a second entry field of the first set of entry fields; and

cause a visual representation of the second plurality of dataset entries to be provided to the user as the at least one first dataset entry.

3. The system of claim 2 , wherein the system is further caused to:

receive a third constraint term;

identify, from the plurality of datasets, at least a third dataset entry including the third constraint term in a third set of entry fields;

update the visual representation of the at least one first dataset entry based on the third constraint term; and

cause a second visual representation of at least the third dataset entry to be provided to the user.

4. The system of claim 1 , wherein the system is further caused to:

identify a first entry field of the first set of entry fields having the at least one constraint;

identify a second entry field of the second set of entry fields having the at least one constraint; and

compare the first entry field to the second entry field, wherein the visual representation of the at least one first dataset entry and the at least one second dataset entry is based on at least the comparison of the first entry field to the second entry field.

5. The system of claim 4 , wherein the at least one first dataset entry and the at least one second dataset entry each comprise a plurality of entries, and wherein to compare the first entry field to the second entry field, the system is further caused to:

determine a first type of entry field of the first entry field;

determine a second type of entry field of the second entry field;

assign a first value to the first type of entry field based on a first number of the plurality of entries in which the at least one constraint term is identified within the first type of entry field;

assign a second value to the second type of entry field based on a second number of the plurality of entries in which the at least one constraint term is identified within the second type of entry field; and

compare the first value to the second value, wherein the visual representation of the at least one first dataset entry and the at least one second dataset entry is based on at least the comparison of the first value to the second value.

6. The system of claim 3 , wherein to update the visual representation of the at least one first dataset entry based on the third constraint term, the system is further caused to:

identify a third entry field of the third set of entry fields having the third constraint term;

determine a third type of entry field of the third entry field; and

update the visual representation of the at least one first dataset entry based on the third type of entry field of the third entry field.

7. The system of claim 1 , wherein the first type of entry field and the second type of entry field comprise one of a first name, a last name, a user identification, contact information, location, and/or position.

8. The system of claim 1 , wherein the system is further caused to:

determine that a stored dataset is associated with the at least one constraint term and the second dataset; and

responsive to a determination that the stored dataset is associated with the at least one constraint term and the second dataset, identify the at least one second dataset entry including the at least one constraint term from the stored dataset.

9. The system of claim 1 , wherein the system is further caused to:

receive an identification of a dataset to be searched; and

add the identified dataset to the plurality of datasets.

10. The system of claim 1 , wherein the system is further caused to:

generate a new dataset comprising at least the first dataset entry including the at least one constraint term and the second dataset entry including the at least one constraint term, wherein the new dataset is stored in a repository for available for later retrieval.

11. A computer-implemented method implemented by a computer system having one or more physical processors and storage media storing machine-readable instructions that, when executed by the one or more physical processors, cause the computer system to perform the method, the method comprising:

obtaining access to a plurality of datasets;

receiving at least one constraint term provided by a user, the at least one constraint term received in response to the user inputting the at least one constraint term into a cell of a table presented in a graphical user interface;

identifying at least a first dataset and a second dataset from the plurality of datasets, wherein the identified first dataset includes at least one first dataset entry having the at least one constraint term in a first set of entry fields and the identified second dataset includes at least one second dataset entry having the at least one constraint term in a second set of entry fields;

identifying the at least one first dataset entry including the at least one constraint term and the at least one second dataset entry including the at least one constraint term;

updating one or more column names of the table based on the at least one first dataset entry of the first dataset and the at least one second dataset entry of the second dataset; and

causing the graphical user interface to present the at least one first dataset entry of the first dataset and the at least one second dataset entry of the second dataset in corresponding rows of the table based on the updated one or more column names.

12. The method of claim 11 , wherein the at least one constraint term includes at least a first constraint term and a second constraint term, and wherein identifying the at least one first dataset entry including the at least one constraint term comprises:

identifying, by the computer system, a first plurality of dataset entries of the first dataset having the first constraint term in at least a first entry field of the first set of entry fields;

caching, by the computer system, the first plurality of dataset entries in a local memory module;

identifying, by the computer system, from the cached first plurality of dataset entries, a second plurality of dataset entries having the second constraint term in at least a second entry field of the first set of entry fields; and

causing, by the computer system, a visual representation of the second plurality of dataset entries to be provided to the user as the at least one first dataset entry.

13. The method of claim 12 , the method further comprising:

receiving, by the computer system, a third constraint term;

identifying, by the computer system, from the plurality of datasets, at least a third dataset entry including the third constraint term in a third set of entry fields;

updating, by the computer system, the visual representation of the at least one first dataset entry based on the third constraint term; and

causing, by the computer system, a second visual representation of at least the third dataset entry to be provided to the user.

14. The method of claim 11 , the method further comprising:

identifying, by the computer system, a first entry field of the first set of entry fields having the at least one constraint;

identifying, by the computer system, a second entry field of the second set of entry fields having the at least one constraint; and

comparing, by the computer system, the first entry field to the second entry field, wherein the visual representation of the at least one first dataset entry and the at least one second dataset entry is based on at least the comparison of the first entry field to the second entry field.

15. The method of claim 14 , wherein the at least one first dataset entry and the at least one second dataset entry each comprise a plurality of entries, and wherein comparing the first entry field to the second entry field comprises:

determining, by the computer system, a first type of entry field of the first entry field;

determining, by the computer system, a second type of entry field of the second entry field;

assigning, by the computer system, a first value to the first type of entry field based on a first number of the plurality of entries in which the at least one constraint term is identified within the first type of entry field;

assigning, by the computer system, a second value to the second type of entry field based on a second number of the plurality of entries in which the at least one constraint term is identified within the second type of entry field; and

comparing, by the computer system, the first value to the second value, wherein the visual representation of the at least one first dataset entry and the at least one second dataset entry is based on at least the comparison of the first value to the second value.

16. The method of claim 13 , wherein updating the visual representation of the at least one first dataset entry based on the third constraint term comprises:

identifying, by the computer system, a third entry field of the third set of entry fields having the third constraint term;

determining, by the computer system, a third type of entry field of the third entry field; and

updating, by the computer system, the visual representation of the at least one first dataset entry based on the third type of entry field of the third entry field.

17. The method of claim 11 , wherein the first type of entry field and the second type of entry field comprise one of a first name, a last name, a user identification, contact information, location, and/or position.

18. The method of claim 11 , the method further comprising:

determining, by the computer system, that a stored dataset is associated with the at least one constraint term and the second dataset; and

responsive to a determination that the stored dataset is associated with the at least one constraint term and the second dataset, identifying, by the computer system, the at least one second dataset entry including the at least one constraint term from the stored dataset.

19. The method of claim 11 , the method further comprising:

receiving, by the computer system, an identification of a dataset to be searched; and

causing, by the computer system, the identified dataset to be added to the plurality of datasets.

20. The method of claim 11 , the method further comprising:

generating, by the computer system, a new dataset comprising at least the first dataset entry including the at least one constraint term and the second dataset entry including the at least one constraint term, wherein the new dataset is stored in a repository for available for later retrieval.

Assignments (10)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2018
From: TURKI, HAITHEM; XU, YIXUN; KARA, FERIDUN ARDA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 047082/0983 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2018
From: KROMWIJK, SANDER
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 047083/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2018
From: COHEN, STEPHEN
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 047083/0175 →
Cited By (1)
US 12,271,686