Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


John Martin Hoernkvist, Cupertino US

John Martin Hoernkvist, Cupertino, CA US

Patent application numberDescriptionPublished
20080306911ORDERED INDEX - Systems and methods for processing an index are described. A postings list of items containing a particular term are ordered in a desired retrieval order, e.g., most recent first. The ordered items are inserted into an inverted index in the desired retrieval order, resulting in an ordered inverted index from which items may be efficiently retrieved in the desired retrieval order. During retrieval, items may first be retrieved from a live index, and the retrieved items from the live and ordered indexes may be merged. The retrieved items may also be filtered in accordance with the items' file grouping parameters.12-11-2008
20080306912QUERY RESULT ITERATION - Systems and methods for processing an index are described. A pulse in an inverted index refers to a group of items that do not occur in any other pulse in the index. When processing a query against an inverted index in which pulses are present, the query is processed against a single pulse. The end of the pulse is determined based on the characteristics of the pulse and the linked list nodes that comprise the postings lists from which the index was generated. In some embodiments, index updates are applied to the query result obtained from a single pulse to provide an efficient and up to date query result.12-11-2008
20080306927Index Partitioning and Scope Checking - Systems and methods for processing an index are described. Searches are scope checked more efficiently using a forward lookup process based on the size of the requested search scope. In addition, an index is partitioned into separate stores based on a search scope that is learned based on where the user commonly conducts searches. As an example, a separate store may be created for a user's home directory should the user be conducting most of his or her searches in that directory. In addition to limiting the size of the index, during retrieval, intelligent index partitioning avoids the need to scope check a common search location.12-11-2008
20080306949INVERTED INDEX PROCESSING - Systems and methods for processing an index are described. In one exemplary method, a 2-level term table and postings table is used to generate postings lists. The postings lists are optimally stored in a postings file. Update sets for an index are optimally processed to update a index to a storage medium using flushing.12-11-2008
20080306978INDEX AGING AND MERGING - Systems and methods for processing an index are described. An index may be merged with another index of comparable age and size into a single index. Since older indexes are less likely to need updating, they are “set aside” to age based on certain adaptive criteria such as the age and size of the index, percentage of deletions, and how long it takes to update the index. An index that has been set aside may be compacted into a format that is optimized for fast searching.12-11-2008
20080307013UPDATING AN INVERTED INDEX - Systems and methods for processing an index are described. To insure that the most updated index is available without having to update the index after every change (which can consume enormous resources), a specially marked postings list is generated for a changed item. During retrieval, the specially marked postings list supplements the existing content of an inverted index referencing the changed item. In this manner, the retrieval result for items containing the term under which the changed item was originally indexed is updated in accordance with the specially marked postings list to insure the most accurate retrieval result.12-11-2008
20100274781ORDERED INDEX - Systems and methods for processing an index are described. A postings list of items containing a particular term are ordered in a desired retrieval order, e.g., most recent first. The ordered items are inserted into an inverted index in the desired retrieval order, resulting in an ordered inverted index from which items may be efficiently retrieved in the desired retrieval order. During retrieval, items may first be retrieved from a live index, and the retrieved items from the live and ordered indexes may be merged. The retrieved items may also be filtered in accordance with the items' file grouping parameters.10-28-2010
20110289093UPDATING AN INVERTED INDEX - Systems and methods for processing an index are described. To insure that the most updated index is available without having to update the index after every change (which can consume enormous resources), a specially marked postings list is generated for a changed item. During retrieval, the specially marked postings list supplements the existing content of an inverted index referencing the changed item. In this manner, the retrieval result for items containing the term under which the changed item was originally indexed is updated in accordance with the specially marked postings list to insure the most accurate retrieval result.11-24-2011

Patent applications by John Martin Hoernkvist, Cupertino, CA US