IP Library Granted Patent US 8,271,499
Granted Patent B2
US 8,271,499 · App. 12/481,693 · Granted Sep 18, 2012

Incremental maintenance of inverted indexes for approximate string matching

Assignee: AT&T Intellectual Property I, L.P.
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 8,271,499
App. No.
12/481,693
Granted
Sep 18, 2012
Kind
B2
Abstract

In embodiments of the disclosed technology, indexes, such as inverted indexes, are updated only as necessary to guarantee answer precision within predefined thresholds which are determined with little cost in comparison to the updates of the indexes themselves. With the present technology, a batch of daily updates can be processed in a matter of minutes, rather than a few hours for rebuilding an index, and a query may be answered with assurances that the results are accurate or within a threshold of accuracy.

Claims (42)

1. A method for limiting updates of inverted indexes in a database, the method comprising:

calculating a first inverse document frequency for each n-gram in a plurality of strings;

calculating a first inverse document frequency related length for each string in the plurality of strings;

for each n-gram, creating an inverted list comprising the strings containing the n-gram;

sorting each inverted list by the first inverse document frequency related length of the strings in the inverted list;

receiving an update to the plurality of strings;

determining which n-grams are affected by the update;

calculating, based on the update, a second inverse document frequency of the affected n-grams;

determining which strings are affected by the update;

calculating, based on the update, a second inverse document frequency related length of the affected strings;

determining which inverted lists are affected by the update; and

for each affected inverted list:

calculating an error based on the second inverse document frequencies;

determining whether the error is less than a predefined error threshold; and

upon determining that the error is not less than the predefined error threshold, updating the affected inverted list; and

answering a query based on the updated affected inverted lists.

2. The method of claim 1 , wherein the update is an addition of a string.

3. The method of claim 1 , wherein the update is a deletion of a string.

4. The method of claim 1 , wherein the update is a modification of a string.

5. The method of claim 1 , wherein the error is based on a difference between the second inverse document frequency and the first inverse document frequency.

6. The method of claim 1 , wherein the predefined error threshold is determined such that no false dismissals of an answer occur in answering the query.

7. The method of claim 1 , wherein the predefined error threshold is determined such that a small number of false positive answers is introduced in answering the query.

8. A search engine database processing device comprising:

means for calculating a first inverse document frequency for each n-gram in a plurality of strings;

means for calculating a first inverse document frequency related length for each string in the plurality of strings;

means for, for each n-gram, creating an inverted list comprising the strings containing the n-gram;

means for sorting each inverted list by the first inverse document frequency related length of the strings in the inverted list;

means for receiving an update to the plurality of strings;

means for determining which n-grams are affected by the update;

means for calculating, based on the update, a second inverse document frequency of the affected n-grams;

means for determining which strings are affected by the update;

means for, for each affected inverted list:

calculating an error based on the second inverse document frequencies;

determining whether the error is less than a predefined error threshold; and

upon determining that the error is not less than the predefined error threshold, updating the affected inverted list; and

means for answering a query based on the updated affected inverted lists.

9. The device of claim 8 , wherein the update is an addition of a string.

10. The device of claim 8 , wherein the update is a deletion of a string.

11. The device of claim 8 , wherein the update is a modification of a string.

12. The device of claim 8 , wherein the error is based on a difference between the second inverse document frequency and the first inverse document frequency.

13. The device of claim 8 , wherein the predefined error threshold is determined such that no false dismissals of an answer occur answering the query.

14. The device of claim 8 , wherein the predefined error threshold is determined such that a small number of false positive answers is introduced in answering the query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2009
From: HADJIELEFTHERIOU, MARIOS; SRIVASTAVA, DIVESH
To: AT&T INTELLECTUAL PROPERTY I, L.P.
Reel/Frame 022805/0231 →
Continuity (1)
Related Publication 20100318519A1 · Dec 16, 2010