Preference (or ranked) queries rank the objects of a database according to a function of their attributes. For example consider a database containing houses available for sale (see demo below). The properties have attributes such as price, number of bedrooms, age, square feet, etc. For a user, the price of a property and the square feet area may be the most important issues, equally weighted in the final choice of a property, and the property's age may also be an important issue, but of lesser weight. The vast majority of e-commerce systems available for such applications do not help users in answering such queries, as they commonly order according to a single attribute. Manual examination of the query results has to take place subsequently. For instance, the user will have to order the properties according to, say, price and then manually examine the square feet area and the property's age. One may have to inspect a lot of houses until the best combination of important attributes is found, since the cheap houses will most probably be old and small.
Preference queries are needed in operations’ research and many real life apps but database systems cannot efficiently produce the top results of a preference query because they need to evaluate the weight function over all tuples of the relation. PREFER can pipeline and produce the top results of preference queries efficiently by using materialized views that have been preprocessed and stored. Intuitively, the key requirement is to find a materialized view whose weight function is similar to the query’s weight function. PREFER delivers excellent performance by materializing a reasonable number of views.
For examples of ranked queries and a high level introduction of PRFER's algorithms see our presentation.
|Yannis Papakonstantinou, Professor|
|Vagelis Hristidis, PhD student|
|V. Hristidis, N. Koudas, Y. Papakonstantinou PREFER: A System for the Efficient Execution of Multi-Parametric Ranked Queries ACM SIGMOD 2001.|
|V. Hristidis, Y. Papakonstantinou Algorithms and Applications for answering Ranked Queries using Ranked Views. VLDB Journal, 2003|
PREFER's presentation, at ACM SIGMOD 2001, Santa Barbara, CA.
The demo is based on an artificial dataset of imaginary houses in San Diego. The user can set four paramaters and either select PREFER's execution method, or the standard SQL execution. More information is provided at the PREFER's Demo page.
We have developed a downloadable application to apply the PREFER algorithms to any suitable database. For more information go to PREFER's Application page.