IP Library Granted Patent US 8,768,914
Granted Patent B2
US 8,768,914 · App. 12/156,523 · Granted Jul 1, 2014

System and method for searching and matching databases

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,768,914
App. No.
12/156,523
Granted
Jul 1, 2014
Kind
B2
Abstract

There is provided a method for searching a database to obtain data. The method includes (a) prioritizing a set of keys that are derived from a match inquiry, thus yielding a prioritized set of keys, wherein the prioritizing is based on, for each key of the set, an efficacy of using the key, (b) determining a subset of the prioritized set, and (c) retrieving, using the subset, a set of candidates for satisfying the match inquiry.

Claims (35)

1. A system comprising a processor that performs a method that includes:

parsing an inquiry, thereby identifying a set of terms;

generating a key having a value that comprises at least one term selected from said set of terms, wherein said key is selected from the group consisting of exact name, words, word pairs, shingles, acronym, soundex, latitude/longitude, phone, and phone centrex, thus yielding a plurality of keys having corresponding terms;

obtaining, for each of said keys, a count of candidates in a database that are possible matches to said inquiry;

excluding from said plurality of keys, based on said count, keys that would return more candidates than a predetermined limit, thus yielding a limited set of keys;

prioritizing said limited set of keys, thus yielding a prioritized set of keys in a prioritized order, wherein said prioritizing is based on, for a given key of said limited set of keys, a cost of using said given key with a corresponding term of said given key, wherein said cost is selected from the group consisting of:

(a) time to retrieve candidates when using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(b) complexity of using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(c) likelihood of retrieving a most appropriate match using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(d) a quantity of candidates that would be retrieved using (i) said given key with (ii) said corresponding term of said given key as a value for said given key, and

(e) effectiveness of using (i) said given key with (ii) said corresponding term of said given key as a value for said given key; and

retrieving, using (i) said prioritized set of keys with (ii) corresponding terms of said prioritized set of keys as values for said prioritized set of keys, in said prioritized order, a set of candidates for satisfying said inquiry.

2. The system of claim 1 , wherein said retrieving is performed until either (a) all keys of set prioritized set of keys have been employed, or (b) a high-confidence candidate has been retrieved.

3. The system of claim 1 , wherein said method further comprises, for each candidate of said set of candidates:

assigning a match string indicative of a similarity between corresponding attributes of said inquiry and said candidate; and

determining, from said match string, a confidence code that indicates a class of similarity between said inquiry and said candidate.

4. The system of claim 3 , wherein said method further comprises:

determining, from said set of candidates, a subset having a highest confidence code; and

selecting, from said subset having said highest confidence code, a best match to said inquiry.

5. The system of claim 4 , wherein said method further comprises:

determining, for said best match, a descriptive variable that provides information about an attribute of said best match.

6. The system of claim 5 , wherein said method further comprises:

outputting said best match, said confidence code, said match string, and said descriptive variable.

7. A non-transitory computer-readable medium comprising a program encoded thereon that is executable in a processor to perform a method that includes:

parsing an inquiry, thereby identifying a set of terms;

generating a key having a value which comprises at least one term selected from said set of terms, wherein said key is selected from the group consisting of exact name, words, word pairs, shingles, acronym, soundex, latitude/longitude, phone, and phone centrex, thus yielding a plurality of keys having corresponding terms;

obtaining, for each of said keys, a count of candidates in a database that are possible matches to said inquiry;

excluding from said plurality of keys, based on said count, keys that would return more candidates than a predetermined limit, thus yielding a limited set of keys;

prioritizing said limited set of keys, thus yielding a prioritized set of keys in a prioritized order, wherein said prioritizing is based on, for a given key of said limited set of keys, a cost of using said given key with a corresponding term of said given key, wherein said cost is selected from the group consisting of:

(a) time to retrieve candidates when using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(b) complexity of using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(c) likelihood of retrieving a most appropriate match using (i) said given key with (ii) said corresponding term of said given key as a value for said given key,

(d) a quantity of candidates that would be retrieved using (i) said given key with (ii) said corresponding term of said given key as a value for said given key, and

(e) effectiveness of using (i) said given key with (ii) said corresponding term of said given key as a value for said given key; and

retrieving, using (i) said prioritized set of keys with (ii) corresponding terms of said prioritized set of keys as values for said prioritized set of keys, in said prioritized order, a set of candidates for satisfying said inquiry.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Aug 27, 2025
From: BANK OF AMERICA, N.A. AS AGENT
To: THE DUN & BRADSTREET CORPORATION; DUN & BRADSTREET EMERGING BUSINESSES CORP.; DUN & BRADSTREET, INC.; HOOVER’S, INC.; LATTICE ENGINES, INC.
Reel/Frame 072591/0843 →
SECURITY INTEREST Recorded Aug 27, 2025
From: DUN & BRADSTREET EMERGING BUSINESSES CORP.; DUN & BRADSTREET, INC.; LATTICE ENGINES, INC.; THE DUN AND BRADSTREET CORPORATION
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 072643/0196 →
INTELLECTUAL PROPERTY RELEASE AND TERMINATION Recorded Jan 18, 2022
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: THE DUN & BRADSTREET CORPORATION; DUN & BRADSTREET EMERGING BUSINESSES CORP.; DUN & BRADSTREET, INC.; HOOVER'S, INC.
Reel/Frame 058757/0232 →
PATENT SECURITY AGREEMENT Recorded Feb 12, 2019
From: THE DUN & BRADSTREET CORPORATION; DUN & BRADSTREET EMERGING BUSINESSES CORP.; DUN & BRADSTREET, INC.; HOOVER'S, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 048306/0375 →
PATENT SECURITY AGREEMENT Recorded Feb 12, 2019
From: THE DUN & BRADSTREET CORPORATION; DUN & BRADSTREET EMERGING BUSINESSES CORP.; DUN & BRADSTREET, INC.; HOOVER'S INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 048306/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2008
From: SCRIFFIGNANO, ANTHONY J.; OHLSON, EDWARD; ALLAWAY, DAVID; SHIPMAN, COURTNEY; GUSTAFSON, ERIC; SKAHILL, LARRY; HAYENHJELM, AMY; CHAKRABORTY, SUDIP; PILLAI, AJAY
To: DUN & BRADSTREET, INC.
Reel/Frame 021778/0124 →