michael stonebraker mit session

28
One Size Fits All An Idea Whose Time Has Come and Gone by Michael Stonebraker

Upload: ugur-candan

Post on 15-Jan-2015

1.546 views

Category:

Technology


1 download

DESCRIPTION

h-store and future of RDBMS

TRANSCRIPT

Page 1: Michael stonebraker mit session

One Size Fits AllAn Idea Whose Time Has

Come and Gone

by

Michael Stonebraker

Page 2: Michael stonebraker mit session

DBMS Vendors (The Elephants) Sell

One Size Fits All (OSFA)

It’s too hard for them to maintain multiple code bases for different specialized purposes

* engineering problem* sales problem* marketing problem

Page 3: Michael stonebraker mit session

The OSFA Elephants

• Sell code lines that date from the 1970’s

• Legacy code• Built for very different hardware

configurations• And some cannot adapt to grids….

• That was designed for business data processing (OLTP)

• Only market back then• Now warehouses, science, real time,

embedded, ..

Page 4: Michael stonebraker mit session

Current DBMS Gold Standard

• Store fields in one record contiguously on disk

• Use B-tree indexing

• Use small (e.g. 4K) disk blocks

• Align fields on byte or word boundaries

• Conventional (row-oriented) query optimizer and

executor

Page 5: Michael stonebraker mit session

Terminology -- “Row Store”

Record 2

Record 4

Record 1

Record 3

E.g. DB2, Oracle, Sybase, SQLServer,

Greenplum, Netezza,Teradata,…

Page 6: Michael stonebraker mit session

At This Point, RDBMS is “long in the tooth”

• There are at least 6 (non trivial) markets where a

row store can be clobbered by a specialized

architecture

– Warehouses (Vertica, SybaseIQ, KX, …)

– OLTP (VoltDB)

– RDF (Vertica et. al.)

– Text (Google, Yahoo, …)

– Scientific data (MatLab, SciDB)

– Streaming data (StreamBase Coral8, …)

Page 7: Michael stonebraker mit session

Definition of “Clobbered”

• A factor of 50 in performance

Page 8: Michael stonebraker mit session

Current DBMSs

• 30 years of “grow only” bloatware

• That is not good at anything

• And that deserves to be sent to the “home for

tired software”

Page 9: Michael stonebraker mit session

Pictorially:

OLTPData Warehouse

Other apps

DBMS apps

Page 10: Michael stonebraker mit session

The DBMS Landscape – Performance Needs

OLTPData Warehouse

Other apps

low

high

high

high

Page 11: Michael stonebraker mit session

One Size Does Not Fit All -- Pictorially

Open source

Vertica et. al. VoltDB, etc.

SciDB, etc

Elephants get only “the crevices”

Page 12: Michael stonebraker mit session

Stonebraker’s Prediction

• The DBMS market will move over the next

decade or so from OSFA

• To specialized (market-specific) architectures

• And open source systems

• Presumably to the detriment of the

elephants

Page 13: Michael stonebraker mit session

A Couple of Slides of Color on Two of the Markets

Data warehouses

OLTP

Page 14: Michael stonebraker mit session

Data Warehouses – Column Stores are the Answer

IBM 60.25 10,000 1/15/2006

MSFT 60.53 12,500 1/15/2006

Row Store:

Used in: Oracle, SQL Server, DB2, Netezza,…

IBM 60.25 10,000 1/15/2006

MSFT 60.53 12,500 1/15/2006

Column Store:

Used in: Sybase IQ, Vertica

Page 15: Michael stonebraker mit session

Data Warehouses – Column Stores Clobber Row Stores

• Read only what you need

• “Fat” fact tables are typical

• Analytics read only a few columns

• Better compression

• Execute on compressed data

• Materialized views help row stores and

column stores about equally

Page 16: Michael stonebraker mit session

Example of “Clobber”

• Vertica on an 2 processor system costing ~$2K

• Netezza on a 112 processor system costing ~$1M

• Customer load time benchmark

• Vertica 2.8 times faster – per processor/disk

• Customer query benchmark

• Vertica 34X on 1/56th the hardware (factor of 1904)

Page 17: Michael stonebraker mit session

Things to Demand From ANY BI DBMS

• Scalable

• Runs on a grid (MPP), with partitioning

• Replication for HA/DR

• “no knobs” operation (more than index selection)

• Cannot hire enough DBAs

• On-line update – in parallel with query

• Ability to run multiple analyses on compatible data

• Time travel

• On-the-fly reprovisioning

Page 18: Michael stonebraker mit session

OLTP – The Big Picture

• Where the time goes (TPC-C) (Sigmod ’07)• 24% -- the buffer pool• 24% -- locking• 24% -- latching• 24% -- recovery• 4% -- useful work

Page 19: Michael stonebraker mit session

OLTP – The Big Picture

• Have to focus on overhead!!!!!• Better data structures only affects 4%

• Have to get rid of all four sources to go really fast• Get rid of one, and you win 25%

Page 20: Michael stonebraker mit session

H-Store/VoltDB Assumptions

• Main memory operation

• 1 TB is a VERY big OLTP data base

• No disk stalls

• No user stalls (disallowed in all apps)

• Professional terminal operator

replaced by “Aunt Martha”

• A BIG OLTP transaction reads or write 200

records

• microseconds

Page 21: Michael stonebraker mit session

H-Store/VoltDB Assumptions

• Run transactions to completion

• Single threaded

• Eliminate “latch crabbing”

• And locking

Page 22: Michael stonebraker mit session

H-Store/VoltDB Assumptions

• Built-in high availability and disaster

recovery

• Failover to a replica

• No redo log

Page 23: Michael stonebraker mit session

H-Store/VoltDB Assumptions

• Scalability requires MPP and partitioning

• Most transactions are naturally “single-

sited”

• Place my order

• Read my reservation

• Update my profile

Page 24: Michael stonebraker mit session

H-Store/VoltDB Assumptions

• Can play tricks to make transactions

single-sites

• E.g. replicate read-almost-always

data

• And some companies mandate ‘single-

sitedness”

Page 25: Michael stonebraker mit session

H-Store/VoltDB Summary

• No buffer pool overhead• There isn’t one

• No crash recovery overhead• Done by failover• (optional) Asynchronous data

transmission to reporting system• (optional) Asynchronous local data

archive• No latching or locking overhead

• Transactions are run to completion – single threaded

Page 26: Michael stonebraker mit session

OLTP Performance (TPC-C)

• Elephant

• 850 TPS (1/2 the land speed record per processor)

• H-Store

• 70,416 TPS (82X)

• VoltDB

• (33X)

Page 27: Michael stonebraker mit session

My Vision – Restated

Warehouse Specialized SystemJelly bean grid50X elephantHA/DRLimited DBA

OLTP Specialized SystemJelly bean grid33X ElephantHA/DRLimited DBA

InternalETL

Page 28: Michael stonebraker mit session

The Data Center of the Future

• Specialized DBMSs

• Perhaps a half dozen

• Good at a specific task

• Running on “jelly bean” MPP

• Private or public cloud

• Virtualization (sharing of resources) allows you to

run 50% headroom rather than 90%

• Uniformity lowers DBA costs