Presentation is loading. Please wait.

Presentation is loading. Please wait.

Deco — Declarative Crowdsourcing

Similar presentations


Presentation on theme: "Deco — Declarative Crowdsourcing"— Presentation transcript:

1 Deco — Declarative Crowdsourcing
Scoop — The Stanford – Santa Cruz Project for Cooperative Computing with Algorithms, Data, and People Hector Garcia-Molina, Aditya Parameswaran, Hyunjung Park, Alkis Polyzotis, Jennifer Widom Stanford and UCSC

2 Same as everyone else’s…
The Big Picture Same as everyone else’s… Declarative queries DBMS like thing Web

3 The Big Picture Same as everyone else’s… DBMS like thing WSQ/DSQ
Declarative queries WSQ/DSQ [Goldman & Widom, SIGMOD 2000] DBMS like thing Web

4 Primary Focus (distinguishing features?)
Theoretical foundations Generality / flexibility Query optimization We’re pretty sure other proposed models are instances of ours; let us know.

5 The Deco Data Model Goals for a new data model
(shamelessly stolen from myself) Well-defined Understandable Sufficiently expressive (and not more) Similar to existing models Implementable

6 The Deco Data Model RDBMS Conceptual schema Actual schema Schema End
designer End user relations and other stuff relations Conceptual schema automatic (system) Actual schema RDBMS

7 Rest of This Presentation
1. Small motivating example 2. “Relations and other stuff” 3. Mapping from conceptual schema to actual schema 4. Semantics: “valid instance” (actual to conceptual) Not included in presentation Enough examples, especially data Normal forms (BCNF/4NF) Metadata/annotations Various details… RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

8 Small Example ⋈ 1. Fetch 2. Resolve 3. Join restaurant rating cuisine
Chez Panisse 4.9 French California Bytes 3.8 • • • 1. Fetch 2. Resolve 3. Join User view o resolution rule resolution rule restaurant Chez Panisse Bytes • • • restaurant rating Chez Panisse 4.8 5.0 4.9 Bytes 3.6 4.0 • • • restaurant cuisine Chez Panisse French California Bytes • • • Anchor fetch rule Chez Panisse Bytes fetch rule French Dependent Dependent fetch rule fetch rule

9 Relations and other stuff
Attributes designated as anchor or dependent Resolution rules — dealing with uncertainty Fetch rules — “access methods” to externally obtained data RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

10 Relations and Attributes
R (restaurant, address, rating, cuisine) S (address, city, zip) RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

11 Relations and Attributes
R (restaurant, address, [rating], [cuisine]) S (address, [city, zip]) [dependent attribute groups] RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

12 Relations and Attributes
R (restaurant, address, [rating], [cuisine]) S (address, [city, zip]) [dependent attribute groups] anchor attributes RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

13 Resolution Rules R (restaurant, address, [rating], [cuisine])
S (address, [city, zip]) One resolution rule per dependent attribute-group restaurant,address  rating (F=avg) restaurant  cuisine (F=dup-elim) address  city,zip (F=majority) LHS  RHS with (black-box) function F Given LHS values and one or more RHS values, F returns zero or more (new) values for RHS RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system) Each resolution rule imposes an MVD on the conceptual schema. If the resolution function guarantees to return exactly one value, then the MVD is also an FD.

14 Fetch Rules R (restaurant, address, [rating], [cuisine])
S (address, [city, zip]) LHS  RHS with procedure P Given LHS value, procedure P can obtain RHS values from external source(s) restaurant,address  rating restaurant  cuisine address  city,zip rating  restaurant,address cuisine  restaurant,address rating,cuisine  restaurant,address   restaurant,address   anchor attributes (subset of) anchor  dependent group(s) dependent group(s)  anchor RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

15 Conceptual Schema (end user)
R (restaurant, address, rating, cuisine) S (address, city, zip) RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

16 Actual Schema R (restaurant, address, [rating], [cuisine])
S (address, [city, zip]) restaurant,address  rating restaurant  cuisine address  city,zip One RR per dependent attribute-group “Deco tables” [decomposed] One for anchor attributes One for each resolution rule A1(restaurant, address) A2(restaurant, address, rating) A3(restaurant, cuisine) A4(address) A5(address, city, zip) RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system) Deco tables are a 4NF decomposition based on the MVDs imposed by the RRs. If the MVD is also an FD, the FD may not hold in the Deco table.

17 Actual Schema + R (restaurant, address, [rating], [cuisine])
S (address, [city, zip]) restaurant,address  rating restaurant  cuisine address  city,zip One RR per dependent attribute-group Fetch Rules ― add tuples Resolution Rules ― resolve uncertainty (for query result) A1(restaurant, address) A2(restaurant, address, rating) A3(restaurant, cuisine) A4(address) A5(address, city, zip) + RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system) Deco tables are a 4NF decomposition based on the MVDs imposed by the RRs. If the MVD is also an FD, the FD may not hold in the Deco table.

18 Valid Instance of Database
Given: Current contents of Deco tables (actual schema) Fetch Rules and Resolution Rules Valid instance (conceptual schema) is any state of relations obtained by: 1. Fetch — add tuples to Deco tables by invoking FR procedures 2. Resolve — resolve dependent attributes using RR functions 3. Join — full outerjoin of Deco tables for each relation RDBMS Actual schema Conceptual schema Schema designer relations and other stuff End user relations automatic (system)

19 Small Example ⋈ 1. Fetch 2. Resolve 3. Join restaurant rating cuisine
Chez Panisse 4.9 French California Bytes 3.8 • • • 1. Fetch 2. Resolve 3. Join User view o resolution rule resolution rule restaurant Chez Panisse Bytes • • • restaurant rating Chez Panisse 4.8 5.0 4.9 Bytes 3.6 4.0 • • • restaurant cuisine Chez Panisse French California Bytes • • • Anchor fetch rule Chez Panisse Bytes fetch rule French Dependent Dependent fetch rule fetch rule


Download ppt "Deco — Declarative Crowdsourcing"

Similar presentations


Ads by Google