Web 2.0 meets Databases 2.0 Alexandros Labrinidis Advanced Data Management Technologies Laboratory Department of Computer Science University of Pittsburgh
Web 2.0 meets Databases 2.0
Alexandros Labrinidis
Advanced Data Management Technologies LaboratoryDepartment of Computer ScienceUniversity of Pittsburgh
Databases use Relations
• Relational model (proposed in the 70s)
• All data are stored in tables
• Relationships between data also stored in table form
• Operations on tables return tables
ID Make Model Year
1 Toyota Corolla 1988
2Volkswage
nPassat 2004
3 Ford Focus 2002
5 Ford Mustang 2008
6 BMW 325xi 2003
What if we want to make changes?
ID Make Model Year
1 Toyota Corolla 1988
2Volkswage
nPassat 2004
3 Ford Focus 2002
5 Ford Mustang 2008
6 BMW 325xi 2003
ID Make ModelYea
rMade
in
1 Toyota Corolla198
8Japan
2Volkswa
genPassat
2004
Germany
3 Ford Focus200
2USA
5 FordMustan
g200
8USA
6 BMW 325xi200
3German
y
ID Make ModelYea
rMade in Color
1 ToyotaCoroll
a1988
Japan Silver
2Volkswa
genPassat
2004
Germany
3 Ford Focus2002
USA
5 FordMusta
ng2008
USA Blue
6 BMW 325xi2003
Germany
Answer: Semi-structured data (XML)
<cars> <car ID="1"> <make>Toyota</make> <model>Corolla</model> <year>1988</year> </car>
<car ID="2"> <make>Volkswagen</make> <model>Passat</model> <year>2004</year> </car>
...</cars>
<cars> <car ID="1"> <make>Toyota</make> <model>Corolla</model> <year>1988</year> <madein>Japan</madein> </car>
<car ID="2"> <make>Volkswagen</make> <model>Passat</model> <year>2004</year> <madein>Germany</madein> </car>
...</cars>
<cars> <car ID="1"> <make>Toyota</make> <model>Corolla</model> <year>1988</year> <madein>Japan</madein> <color>Silver</color> </car>
<car ID="2"> <make>Volkswagen</make> <model>Passat</model> <year>2004</year> <madein>Germany</madein> </car>
...</cars>
XML Example: RSS Feed
• RSS = Real Simple Syndication
• Simple XML format STANDARD
• Example:
• http://db.cs.pitt.edu
• http://www.google.com (using iGoogle, with http://db.cs.pitt.edu/group/rss/xml )
XML as enabling technology
• Yahoo Pipes: http://pipes.yahoo.com(build simple pipe to process RSS feeds)
• Aggregated News Alertshttp://pipes.yahoo.com/pipes/pipe.info?_id=fELaGmGz2xGtBTC3qe5lkA
• US Population by Statehttp://pipes.yahoo.com/pipes/pipe.info?_id=_Ia89ose3BGMZ6YNlvXiAA
• Mashup: combine data from different sources
• http://www.rockstarapps.com/samples/map-compare/
• http://www.housingmaps.com/
• http://www.zillow.com/
Let’s talk about Blogs
A blog (an abridgment of the term web log) is a website, usually maintained by an individual, with regular entries of commentary, descriptions of events, or other material such as graphics or video. Entries are commonly displayed in reverse chronological order. "Blog" can also be used as a verb, meaning to maintain or add content to a blog.
http://en.wikipedia.org/wiki/Blog
Example: http://www.google.com(using iGoogle, with http://behind-the-ene
my-lines.blogspot.com/ )
Analysis Tool: http://www.blogscope.net
Social Networking
• How many of you have a facebook profile? How often to you check it?
• twitter.com/tli_at_pitt
• Power of twitter/social networking: United Breaks Guitars http://bit.ly/z2GU5
• Real-time search
• Trending topics
• Tweets near you (location-aware)
Too many data out there
• Search engines help
• advanced search:
• google.com alexandros
• google.com alexandros pittsburgh
• google.com/pitt alexandros
• scholar.google.com labrinidis
What happens when you have lots of updates?
• http://www.youtube.com/watch?v=4wp3m1vg06Q
Data Stream Management Systems
Query
Answer
DBMS
data
Data Stream
DSMS
queries
Answer Stream
Examples: google alerts, orbitz traveler alerts
Questions?
Dr. Alexandros LabrinidisAdvanced Data Management Technologies LaboratoryDepartment of Computer Science, University of Pittsburgh
http://db.cs.pitt.edu