Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 ....

32
PELOTON THE SELF-DRIVING DBMS

Transcript of Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 ....

Page 1: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

PELOTON THE SELF-DRIVING DBMS

Page 3: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

2008 5,000 txn/sec

H-Store: A High-Performance, Distributed Main Memory Transaction Processing System VLDB 2008

Page 4: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

2008 5,000 txn/sec

2010 11,000 txn/sec

On Predictive Modeling for Optimizing Transaction Execution in Parallel OLTP Systems VLDB 2011

Page 5: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

2008 5,000 txn/sec

2010 11,000 txn/sec

2012 50,000 txn/sec

Skew-Aware Automatic Database Partitioning in Shared-Nothing, Parallel OLTP Systems SIGMOD 2012

Page 6: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

2008 5,000 txn/sec

2010 11,000 txn/sec

2012 50,000 txn/sec

2015 4,000,000 txn/sec

TicToc: Time Traveling Optimistic Concurrency Control SIGMOD 2016

Page 7: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction
Page 8: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

ONLY MAXIMIZING OLTP Throughput Leads to an Unfulfilling life.

Page 9: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction
Page 11: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

AVERAGE SALARY FOR Database ADMINS IN 2015 was $81,710.

Source: Bureau of Labor Statistics

Page 12: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Self-Driving A DBMS THAT can configure, tune, and optimize itself without any human intervention.

Page 13: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

YES Database Design Data Placement

Query Optimization Knob Configuration Back-up & Recovery

Provisioning

NO Security & ACLS Data Integration UNPLANNED HALTS Version Control

Page 14: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

What’s New? Previous EFFORTS are reactive & human-driven.

A self-driving Dbms has to be predictive.

Page 15: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Why Now? Recent advancements in hardware and deep neural networks make autonomous operation now possible.

Page 16: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction
Page 17: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

In-MEMORY

OLTP+OLAP

Autonomous

LLVM EXEC

Page 18: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

The Brain Integrated Deep Learning FRAMEWORK to model, predict, and optimize HTAP Database workloads.

Self-Driving Database Management Systems CIDR 2017

Page 19: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Workload Categorization

...

24 Hrs

7 days

40 days

Unsupervised

Page 20: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Workload Categorization

Workload Forecasting

...

Long short-term Memory

24 Hrs

7 days

40 days

Unsupervised

Page 21: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Workload Categorization

Workload Forecasting

Optimization Planning

...

Unsupervised

Page 22: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Workload Categorization

Workload Forecasting

Optimization Planning

...

Catalog Benefit

Unsupervised

Page 23: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Evaluation Synthetic workload based on Reddit Traffic Data. Forecast with Tensorflow. Adaptive storage.

Page 24: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

1min intervals Error Rate: 14.7% CPU Training: 25min Probe: 2MS Update: 5ms Size: 2MB

1hr intervals Error Rate: 17.9% CPU Training: 18min Probe: 2ms Update: 5MS Size: 2MB

Page 25: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Adaptive Storage Change the layout of data over time based on how it is accessed.

Bridging the Archipelago Between Row-Stores and Column-Stores for Hybrid Workloads SIGMOD 2016

Page 26: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

A B C D

SELECT AVG(B) FROM myTable WHERE C < “yyy”

UPDATE myTable SET A = 123, B = 456, C = 789 WHERE D = “xxx”

Cold

Hot

Page 27: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

A B C D

A B C D

SELECT AVG(B) FROM myTable WHERE C < “yyy”

UPDATE myTable SET A = 123, B = 456, C = 789 WHERE D = “xxx”

A B C D

Cold

Hot

Page 28: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

0

400

800

1200

1600

Row Layout Column Layout Adaptive Layout

Sep-15 Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert

Exec

utio

n Tim

e (m

s)

Sep-16 Sep-17 Sep-18 Sep-19 Sep-20

Page 29: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

Current Status Single-node Only. Looking for real-world Deployments to test.

Apache 2.0 License

Page 30: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

http://pelotondb.org

Page 31: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction
Page 32: Peloton: The Self-Driving Database Management Systempavlo/slides/selfdriving-nov2016.pdf · 2008 . 5,000 txn/sec . H-Store: A High- Performance, Distributed Main Memory Transaction

END