Are Relational Databases the Only Type of Databases?
-
Upload
kathleen-randall -
Category
Documents
-
view
223 -
download
0
description
Transcript of Are Relational Databases the Only Type of Databases?
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/0B7lNUaak0bK1encwYnBVUWZSWjA/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 P2P
Dynamo
amazon.com
Voldemort
Cassandra
Vuze DHT
Vuze
uTorrent DHT
uTorrent
Row Store and Column Store
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.
Source: Column-Oriented Database Systems, VLDB 2009. Tutorial; S. Harizopoulos, D. Abadi, P. Boncz
Row Store and Column Store
So column stores are suitable for read-mostly, read-intensive, large data repositories
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
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 16
Program Flow
Ecological Network
Biological Network
Social Network
Chemical Network Web Graph
Graph Databases
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!