Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ishan Sharma Abhishek Mittal Vivek Raj

Similar presentations


Presentation on theme: "Ishan Sharma Abhishek Mittal Vivek Raj"— Presentation transcript:

1 Ishan Sharma Abhishek Mittal Vivek Raj
CareDB Ishan Sharma Abhishek Mittal Vivek Raj

2 INDEX Context and Preference aware DBMS CareDB architecture
Preference Input Context Input Query Building Module Query Processor Technical features of CareDB FlexPref Handling Expensive Contextual Data Handling Uncertain Data CareDB prototype

3 What is CareDB? A context and preference-aware database system.
Beyond traditional boolean all or nothing query model. Supports multi-objective preference methods capable of finding the best alternatives according to users’ given preference objectives.

4 What is CareDB? Three of its novel query processing characteristics:
A generic and extensible preference-aware query processing engine. A framework to gracefully handle contextual attributes that are expensive to retrieve. A framework to efficiently process queries over uncertain contextual data. Which we will be discussing in detail

5 Need for a Context and Preference Aware DBMS
Think of an app returning 5 hotels based on its recommendation for 5 hotels: Hotel 1: • No Rooms Hotel 2: • Very Expensive Rooms Hotel 3: • Way too expensive Hotel 4: • Not hygienic enough Hotel 5: • Haunted

6 System Challenges CareDB addresses two fundamental core systems challenges: Preference Methods - Evaluation strategies to rank different preferences. E.g. top-k, skylines, hybrid multi-object methods, k-dominance, k-frequency, top-k dominance etc. Contextual Data - Any interesting data about the user or her environment that can help refine a preference answer.

7 CareDB Architecture

8 User Preference Structure - (Attribute, Preference, [Value])
Hard (e.g., equals) or Soft (e.g., highest, lowest) User may specify a ranking function over multiple attributes. a single user preference maps to single data attribute stored in preference profile specified over numeric or categorical attributes

9 Context Input in CareDB (Static or dynamic)
User context - Any extra information about a user. Database context - Refers to data sources that are registered with CareDB, representing data in the domain a user wishes to query. Environment context - Any information about the user’s surrounding environment, assumed to be stored at a third party and consulted by the query processor. Static : income, profession, and age, Dynamic : current user location or status (e.g., “at home”, “in meeting”) (e.g., restaurant, hotel, and taxi databases) Restaurant database : Static : price, rating, and operating hours, Dynamic : current waiting time Dynamic : road traffic, Relatively static : weather

10 Query Building Module User submits simple SQL queries without constraints. QBM augments the submitted query with the preference constraints stored in the user’s preference profile. Preference constraints added to a Preferring Clause. Using Clause - which preference method to evaluate the preference constraints.

11 Query Building Module

12 Query Processor Embed various types of preference-aware query processing within a relational database engine. Each method accepts preference objectives like those specified in the preferring clause of the query. Support the integration of context-aware query processing. Contextual data is retrieved from a third-party source and expensive to derive relative to data stored locally in the database. Support preference and context-aware query evaluation that involves uncertain data. preference and context aware query processing and optimization engine (e.g., traffic and weather information)

13 CareDB Technical Features
FlexPref - Preference Query Framework Processing Processing with Contextual Data (Expensive) Taking Care of Data Uncertainty

14 FlexPref PairwiseCompare(P, Q) - Objects P and Q come in, the value of P is updated, if Q is preferred 1, if P is preferred -1, or else 0. IsPreferredObject(P, S) - We take an object P and a set of preferred objects S, if P is a preferred object and can be added to S true is returned else false is returned. AddPreferredToSet(P, S) - We take an object P and a set of preferred objects S, P is added to S and S removes or rearranges objects of S.

15 Processing Value with Contextual Data
Real time reading of Data. Is retrieved from secondary sources. It’s much more expensive than getting the local data. Implemented its prototype in Postgresql.

16 Processing Value with Contextual Data

17 Taking Care of Data Uncertainty
In some places, the data value required can be uncertain. Upref is the query processing framework. Treats values to be a set of continuous values, Probability P attached with object O. (sensors, human errors)

18 Taking Care of Data Uncertainty
2 phase mechanism first phase setting the threshold ->Tolerance for error in probability allowed

19 CareDB Implementation
Location-based restaurant & hotel finding application. Allows user to edit preference objective as well as methods to evaluate it. Forwards a simple query to CareDB which injects with preference and context constraints. Using Google Maps API User can set their CareDB preference profile explicitly using the profile editor window. We provide a number of different preference methods to the user.

20 CareDB Implementation
Results The personalized preference SQL query that was run on the database. Answers displayed on an embedded Google Maps interface. Can be displayed using the drop-down menu.

21 Takeaways CareDB - A database taking care of the user’s preferences based and Contextual Data. Technical Features of CareDB - FlexPef, handling context, uncertainity accountability. CareDB implementation Prototype

22 Questions And Answers

23 Thank You


Download ppt "Ishan Sharma Abhishek Mittal Vivek Raj"

Similar presentations


Ads by Google