Automatically ranking answers to database queries
First Claim
Patent Images
1. A computer implemented method for automatically ranking data records by relevance to a query on a database the method comprising:
- deriving a similarity function of the form from at least one of data records in a database and a workload of queries, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database;
applying the similarity function to a given query and records in the database to determine a query frequency between the given query and the records in the database;
ranking the records in the database based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and
returning the records in a ranked order.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for automatically ranking database records by relevance to a given query. A similarity function is derived from data in the database and/or queries in a workload. The derrived similarity function is applied to a given query and records it in the database to rank the records. The records are returned in a ranked order.
118 Citations
32 Claims
-
1. A computer implemented method for automatically ranking data records by relevance to a query on a database the method comprising:
-
deriving a similarity function of the form from at least one of data records in a database and a workload of queries, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a query frequency between the given query and the records in the database; ranking the records in the database based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, the method comprising:
-
deriving an inverse document frequency similarity function of the form from the data records in a database, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
-
15. A method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, and wherein the database has a given workload comprising a set of queries, the method comprising:
-
deriving a query frequency similarity function of the form from the queries in the workload, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
-
16. A method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, and wherein the database has a given workload comprising a set of queries, the method comprising:
-
deriving a similarity function of the form that corresponds to an inverse frequency of attribute values in records of the database and a frequency an attribute value is specified in queries in a workload, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
-
17. A computer readable medium having computer executable instructions stored thereon for performing a method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, the method comprising:
-
deriving a similarity function of the form from at least one of data in a database and a workload of queries, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A computer readable medium having computer executable instructions stored thereon for performing, a method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, the method comprising:
-
deriving an inverse document frequency similarity function of the form from the data records in a database, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
-
31. A computer readable medium having computer executable instructions stored thereon for performing, a method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, and wherein the database has a given workload comprising a set of queries, the method comprising:
-
deriving a query frequency similarity function of the form from the queries in the workload, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes, S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
-
32. A computer readable medium having computer executable instructions stored thereon for performing a method for automatically ranking data records by relevance to a query on a database wherein the database has data records arranged in one or more database tables, and wherein the database has a given workload comprising a set of queries, the method comprising:
-
deriving a similarity function of the form that corresponds to an inverse frequency of attribute values in records of the database and a frequency an attribute value is specified in queries in a workload, wherein t represents a tuple, Q represents a query, w represents an attribute weight, Tk represents a set of constraints on values for categorical attributes or a range for numeric attributes S represents a similarity coefficient, and v represents a value of an attribute, wherein the similarity function corresponds to an inverse frequency of categorical attribute values in records of the database and an inverse frequency of numeric attribute values that is determined by considering a frequency of numeric attribute values specified in the given query and nearby numeric attribute values in the database; applying the similarity function to a given query and records in the database to determine a similarity between the given query and the records; ranking the records based on the similarity between the given query and the records, wherein the similarity function ranks a first record having a same similarity score as a second record higher than the second record when values in the first record for attributes that are not specified in the given query occur more frequently in the database than corresponding attribute values in the second record; and returning the records in a ranked order.
-
Specification