Systems and methods for intelligent parallel searching
First Claim
1. A method comprising:
- receiving, by a search engine executed by a processor device, a request to access target data, wherein the target data is stored in at least one of a plurality of data sources, each of the plurality of data sources having a respective candidate index;
accessing, by the search engine, a plurality of general indices, wherein each of the plurality of general indices comprises a respective index of relationships between data from at least two of the plurality of data sources;
extracting, by the search engine, a plurality of inquiry parameters from the request, wherein each of the extracted plurality of inquiry parameters corresponds to a respective sub-index from the plurality of general indices, wherein each sub-index from the plurality of general indices comprises a respective subset of at least one respective general index from the plurality of general indices;
performing, by the search engine, parallel searches of the plurality of general indices, wherein each parallel search comprises searching a respective sub-index from the plurality of general indices based on a respective inquiry parameter from the extracted plurality of inquiry parameters that corresponds to the respective sub-index;
performing, by the search engine, additional parallel searches of the candidate indices for the plurality of data sources based on the extracted plurality of inquiry parameters and at least one additional inquiry parameter obtained from the parallel searches of the plurality of general indices; and
extracting, by the search engine, an output based on results returned from the additional parallel searches of the candidate indices.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for conducting intelligent parallel searches of data sources. A search engine receives a request to access target data that is stored in at least one of multiple data sources. Each data source has a candidate index. The search engine extracts inquiry parameters from the request. The inquiry parameters corresponds to sub-indices of respective general indices. Each general index includes an index of relationships between data from at least two of the data sources. Each sub-index includes a subset of the respective general index. The search engine performs parallel searches of the general indices common to the data sources. Each parallel search includes searching the sub-indices based on corresponding inquiry parameters for the sub-indices. The search engine performs additional parallel searches of the candidate indices based on results of the parallel searches. The search engine extracts an output from results of the additional parallel searches.
42 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a search engine executed by a processor device, a request to access target data, wherein the target data is stored in at least one of a plurality of data sources, each of the plurality of data sources having a respective candidate index; accessing, by the search engine, a plurality of general indices, wherein each of the plurality of general indices comprises a respective index of relationships between data from at least two of the plurality of data sources; extracting, by the search engine, a plurality of inquiry parameters from the request, wherein each of the extracted plurality of inquiry parameters corresponds to a respective sub-index from the plurality of general indices, wherein each sub-index from the plurality of general indices comprises a respective subset of at least one respective general index from the plurality of general indices; performing, by the search engine, parallel searches of the plurality of general indices, wherein each parallel search comprises searching a respective sub-index from the plurality of general indices based on a respective inquiry parameter from the extracted plurality of inquiry parameters that corresponds to the respective sub-index; performing, by the search engine, additional parallel searches of the candidate indices for the plurality of data sources based on the extracted plurality of inquiry parameters and at least one additional inquiry parameter obtained from the parallel searches of the plurality of general indices; and extracting, by the search engine, an output based on results returned from the additional parallel searches of the candidate indices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A non-transitory computer-readable medium embodying program code executable by a computer system, the non-transitory computer-readable medium comprising:
-
program code for receiving a request to access target data, wherein the target data is stored in at least one of a plurality of data sources, each of the plurality of data sources having a respective candidate index; program code for accessing a plurality of general indices, wherein each of the plurality of general indices comprises a respective index of relationships between data from at least two of the plurality of data sources; program code for extracting a plurality of inquiry parameters from the request, wherein each of the extracted plurality of inquiry parameters corresponds to a respective sub-index from the plurality of general indices, wherein each sub-index from the plurality of general indices comprises a respective subset of at least one respective general index from the plurality of general indices; program code for performing parallel searches of the plurality of general indices, wherein each parallel search comprises searching a respective sub-index from the plurality of general indices based on a respective inquiry parameter from the extracted plurality of inquiry parameters that corresponds to the respective sub-index; program code for performing additional parallel searches of the candidate indices for the plurality of data sources based on the extracted plurality of inquiry parameters and at least one additional inquiry parameter obtained from the parallel searches of the plurality of general indices; and program code for extracting an output based on results returned from the additional parallel searches of the candidate indices. - View Dependent Claims (13, 14, 15)
-
-
16. A system comprising:
-
a non-transitory computer-readable medium configured to store instructions providing a search engine; a processor configured to execute the instructions stored in the non-transitory computer-readable medium to execute the search engine by performing operations comprising; receiving a request to access target data, wherein the target data is stored in at least one of a plurality of data sources, each of the plurality of data sources having a respective candidate index; accessing, by the search engine, a plurality of general indices, wherein each of the plurality of general indices comprises a respective index of relationships between data from at least two of the plurality of data sources; extracting a plurality of inquiry parameters from the request, wherein each of the extracted plurality of inquiry parameters corresponds to a respective sub-index from the plurality of general indices, wherein each sub-index from the plurality of general indices comprises a respective subset of at least one respective general index from the plurality of general indices; performing parallel searches of the plurality of general indices, wherein each parallel search comprises searching a respective sub-index from the plurality of general indices based on a respective inquiry parameter from the extracted plurality of inquiry parameters that corresponds to the respective sub-index; performing additional parallel searches of the candidate indices for the plurality of data sources based on the extracted plurality of inquiry parameters and at least one additional inquiry parameter obtained from the parallel searches of the plurality of general indices; and extracting an output based on results returned from the additional parallel searches of the candidate indices. - View Dependent Claims (17, 18, 19, 20)
-
Specification