Method and apparatus for searching a hierarchical database and an unstructured database with a single search query
First Claim
1. A method of searching a hierarchical database and an inverted index, comprising:
- receiving a single search query that has syntax identifying an unstructured search string within a structured search query to automatically cause a search of the inverted index and use of the result to automatically search the hierarchical database;
extracting the unstructured search string from the single search query;
searching the inverted index according to the unstructured search string, wherein the inverted index includes virtual documents created from data stored in the hierarchical database, wherein each virtual document includes a unique identifier from the hierarchical database used to designate the data in the hierarchical database from which that virtual document was created, wherein a result of the inverted index search includes the unique identifiers of the virtual documents that meet the search; and
for each of the unique identifiers in the result,generating a separate search query from the single search query by replacing the unstructured search string in the structured search query with that unique identifier, andsearching the hierarchical database according to the separate search query
10 Assignments
0 Petitions
Accused Products
Abstract
Techniques for searching a hierarchical database and an unstructured database with a single search query are described herein. In one embodiment, a single search query is received that has syntax identifying an unstructured search string within a structured search query to automatically cause a search of the inverted index and use of the result to automatically search the hierarchical database. The unstructured search string is extracted from the single search query and an inverted index is searched according to the unstructured search string, wherein the inverted index includes virtual documents created from data stored in the hierarchical database, wherein each virtual document includes a unique identifier from the hierarchical database used to designate the data in the hierarchical database from which that virtual document was created, wherein a result of the inverted index search includes the unique identifiers of the virtual documents that meet the search. For each of the unique identifiers in the result, a separate search query is generated from the single search query by replacing the unstructured search string in the structured search query with that unique identifier and the hierarchical database is searched according to the separate search query. Other methods and apparatuses are also described.
-
Citations
25 Claims
-
1. A method of searching a hierarchical database and an inverted index, comprising:
-
receiving a single search query that has syntax identifying an unstructured search string within a structured search query to automatically cause a search of the inverted index and use of the result to automatically search the hierarchical database; extracting the unstructured search string from the single search query; searching the inverted index according to the unstructured search string, wherein the inverted index includes virtual documents created from data stored in the hierarchical database, wherein each virtual document includes a unique identifier from the hierarchical database used to designate the data in the hierarchical database from which that virtual document was created, wherein a result of the inverted index search includes the unique identifiers of the virtual documents that meet the search; and for each of the unique identifiers in the result, generating a separate search query from the single search query by replacing the unstructured search string in the structured search query with that unique identifier, and searching the hierarchical database according to the separate search query - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A search database system, comprising:
-
a hierarchical database to store a set of data in a hierarchical manner, wherein each of a plurality of points in the hierarchy has a unique identifier; a hierarchical database engine coupled with the hierarchical database, the hierarchical database engine to search the set of data stored in the hierarchical database; a document generator coupled with the hierarchical database engine, the document generator to create a different document from the data stored under each of the plurality of points in the hierarchical database; an inverted index; an inverted index engine coupled with the document generator, the inverted index engine to, index each document and the associated unique identifiers in the inverted index, and search the inverted index; a search server user interface, coupled with the hierarchical database engine and the inverted index engine, the search server user interface to receive a single search query that has syntax identifying an unstructured search string within a structured search query to automatically cause a search of the inverted index and use of the result to automatically search the hierarchical database, the search server user interface including, a parser to extract the unstructured search string from the single search query and forward the extracted unstructured search string to the inverted index engine to cause a search of the inverted index; a structured query generator to receive a result of the inverted index search that includes the one or more unique identifiers of the documents that meet the search, and for each of the unique identifiers in the result, to generate a separate search query from the single search query by replacing the unstructured search string in the structured search query with that unique identifier, and forward the separate search query to the hierarchical database engine to cause a search of the hierarchical database according to the separate search query. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 22, 25)
-
- 21. The search database system of 20, wherein each node existing directly below the tree root node represents a private sub-tree, wherein values and node information in the private sub-tree are private to an organization.
Specification