Transcript slides

Are Relational Databases the Only
Type of Databases?
A Brief DB History

Early 1970s
 Many database systems
 Incompatible, exposing many implementation details

Then Ted Codd came along




Relational model
Structured Query Language (SQL)
Implementation differences became irrelevant
A few major DB systems dominated the market
Then Web 2.0 & 3.0, Big Data Happen
 What
do you think happen?
 Semi-structured data happen.
•A lot of it and in many forms…
Some Facts about Web x.0 and Big
Data



Twitter: 255 million monthly active users and 500
million Tweets are sent per day,
Facebook: over 1 billion monthly users and faces 3
million message per 20 minute
Instagram: 200 Million Monthly Active Users and 1.6
Billion Likes and 60 Million Photos shared every day
Database Systems Landscape Nowadays
Somebody, Please, Bring Some
Order to This Madness – Cont’d
Somebody, Please, Bring Some
Order to This Madness – Cont’d

NoSQL Databases
Somebody, Please, Bring Some
Order to This Madness




Different Interfaces
Different hardware
support
Different application
support
Lack of Uniformity
Source: http://www.infoq.com/articles/State-of-NoSQL
Database Evolution Timeline
Additional Resources
Tutorial by C. Mohan, An In-Depth Look at
Modern Database Systems
 https://docs.google.com/file/d/0B7lNUaak
0bK1encwYnBVUWZSWjA/edit

Key-Value Store



Implemented as an associative array, map, symbol
table, or dictionary abstract data type composed of
a collection of (key, value) pairs such that each
possible key appears at most once in the collection.
A simple put/get interface
Great properties: scalability, availability, reliability
Key-Value Store Usage Scenarios

Increasingly popular within data centers and in P2P
Data center
amazon.com
LinkedIn
Facebook
Dynamo
Voldemort
Cassandra
P2P
Vuze
uTorrent
Vuze DHT
uTorrent DHT
Row Store and Column Store
Source: Column-Oriented Database Systems, VLDB 2009. Tutorial; S.
Harizopoulos, D. Abadi, P. Boncz



In row store data are stored in the disk tuple by tuple.
Where in column store data are stored in the disk column by
column.
Column-stores are more I/O efficient for read-only queries as
they read, only those attributes which are accessed by a query.
Row Store and Column Store
Row Store
Column Store
(+) Easy to add/modify a
record
(+) Only need to read in
relevant data
(-) Might read in
unnecessary data
(-) Tuple writes require
multiple accesses

So column stores are suitable for read-mostly,
read-intensive, large data repositories
Graph Databases
Biological
Network
Ecological
Network
Social
Network
Chemical
Network
Program Flow
Web Graph
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke
16
Graph Databases: Query

Find all the restaurants my friends (in Facebook) like
So, What Does CS Curricula Cover?

Undergrad Database Courses
 Introduction to Relational Databases

Grad Database Courses
 Advanced Relational Databases in IS&T
 Principles of Data Management in CS
• Still relational DBMS.

How about the rest of database system types?
 Good question…

Where is most of the research activity going on nowadays?
 Good question again…
So, Why Do We Emphasize
Relational DBs?

Jack Clark, The Register, 30 August 2013: “The tech world is turning
back toward SQL, bringing to a close a possibly misspent half-decade in
which startups courted developers with promises of infinite scalability
and the finest imitation-Google tools available, and companies found
themselves exposed to unstable data and poor guarantees.”

Google Spanner paper, October 2012: “We believe it is better to have
application programmers deal with performance problems due to
overuse of transactions as bottlenecks arise, rather than always coding
around the lack of transactions.”

Sean Doherty in Wired, September 2013: “But don’t become
unnecessarily distracted by the shiny, new-fangled, NoSQL red buttons
just yet. Relational databases may not be hot or sexy but for your
important data there is no substitute.”
And, The Key Reason of All

Gartner estimates RDBMS market at $26B with
about 9% annual growth, whereas Market
Research Media Ltd expects NoSQL market to
be at $3.5B by 2018.
 Source: C Mohan’s tutorial
Databases make these folks happy ...
End users and DBMS vendors
 DB application programmers



E.g., smart webmasters
Database administrator (DBA)




Designs logical /physical schemas
Handles security and authorization
Data availability, crash recovery
Database tuning as needs evolve
Must understand how a DBMS works!
Summary
DBMS used to maintain, query large datasets.
 Benefits include recovery from system crashes,
concurrent access, quick application
development, data integrity and security.
 Levels of abstraction give data independence.
 A DBMS typically has a layered architecture.
 DBAs hold responsible jobs
and are well-paid! 
 DBMS R&D is one of the broadest,
most exciting areas in CS.

I Want to Hear from You!