WHAT ARE WE DOING WITH OUR LIVES? Nobody Cares About Our - - PowerPoint PPT Presentation

what are we doing with our lives
SMART_READER_LITE
LIVE PREVIEW

WHAT ARE WE DOING WITH OUR LIVES? Nobody Cares About Our - - PowerPoint PPT Presentation

WHAT ARE WE DOING WITH OUR LIVES? Nobody Cares About Our Concurrency Control Research SIGMOD 2017 @ andy_pavlo I am only allowed 3 plugs in this talk. # 3 DISK-ORIENTED CONCURRENCY CONTROL Allows a DBMS to mask the latency of


slide-1
SLIDE 1

SIGMOD 2017

WHAT ARE WE DOING WITH OUR LIVES?

Nobody Cares About Our Concurrency Control Research

@andy_pavlo

slide-2
SLIDE 2

I am only allowed 3 plugs in this talk.

#

slide-3
SLIDE 3

DISK-ORIENTED

Allows a DBMS to mask the latency of non-volatile storage. Pioneering work on transaction processing from the 1970s.

3

CONCURRENCY CONTROL Jim Gray The Great Phil Bernstein

slide-4
SLIDE 4

IN-MEMORY

New concurrency control schemes are needed if the database is assumed to be in memory. Early research in 1980s. Some commercial DBMSs from 1990s.

4

CONCURRENCY CONTROL

slide-5
SLIDE 5

21ST CENTURY RESEARCH ON

Partitioned Protocols → H-Store (VLDB 2007) Non-Partitioned Protocols → Microsoft Hekaton (VLDB 2011) → Silo (SOSP 2013)

5

IN-MEMORY CONCURRENCY CONTROL

slide-6
SLIDE 6

NOBODY CARES ABOUT OUR

All of this research is great for “classic” OLTP applications. We are not addressing the needs of new fields and environments.

6

CONCURRENCY CONTROL RESEARCH

slide-7
SLIDE 7

NOBODY CARES ABOUT OUR

Peter Bailis examined real-world DB

  • applications. Few of them use txns and

many of them don’t use them correctly.

7

CONCURRENCY CONTROL RESEARCH

slide-8
SLIDE 8

NOBODY CARES ABOUT OUR

Peter Bailis examined real-world DB

  • applications. Few of them use txns and

many of them don’t use them correctly. We did an automated evaluation with the CMDBAC corpus. Few apps written in popular frameworks use txns.

7

CONCURRENCY CONTROL RESEARCH

1

slide-9
SLIDE 9

COMMON ASSUMPTIONS MADE IN

Assumption #1: All transactions execute as stored procedures. Assumption #2: All transactions execute with serializable isolation.

8

CONCURRENCY CONTROL RESEARCH

slide-10
SLIDE 10

CONFERENCE PAPER

Examined SIGMOD and VLDB publications from 2011-2016. We found 95 out of 1843 (5%) papers

  • n transaction processing and

concurrency control.

9

SURVEY

slide-11
SLIDE 11
slide-12
SLIDE 12
slide-13
SLIDE 13
slide-14
SLIDE 14
slide-15
SLIDE 15

DATABASE ADMIN SURVEY

We commissioned a survey of DBAs in April 2017 on how applications use databases. 50 responses for 79 DBMS installations.

14

OVERVIEW

+Nine others

slide-16
SLIDE 16

DATABASE ADMIN SURVEY

15

STORED PROCEDURES

21 20 11 9 4 12

5 10 15 20 25

None 1-10% 11-25% 26-50% 51-75% 76-100%

# of Responses

What percentage of the transactions run on your DBMS are executed as stored procedures?

slide-17
SLIDE 17

DATABASE ADMIN SURVEY

16

ISOLATION LEVEL

10 2 12 10 11 8 12 6 10 12 3 11 8 26 1 5 3 2 4 22 1 2 5 10 20 30

Read Uncommitted Read Committed Cursor Stability Repeatable Read Snapshot Isolation Serializable

# of Responses None Few Most All

What isolation level do transactions execute at

  • n this DBMS?
slide-18
SLIDE 18

DATABASE ADMIN SURVEY

Stored Procedures → Software engineering challenges. → Don’t want devs to update too often. Serializable Isolation → It was always done this way. → Not worth the overhead.

17

FEEDBACK

slide-19
SLIDE 19

WHAT DOES THIS MEAN

Assuming that every txn executes as a stored procedure with serializable isolation changes the bottleneck. You end up optimizing things that are not as important as you think…

18

FOR OUR RESEARCH?

slide-20
SLIDE 20

Aren’t I being hypocritical?

slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23

A RESEARCH AGENDA FOR

→ Examine Entire DBMS Architecture → Communication Overhead → Understand Lower Isolation Levels

22

THE NEXT 10 YEARS

slide-24
SLIDE 24

IN-MEMORY MULTI-VERSION

The DBMS’s concurrency control protocol is not the only critical part of executing txns in a DBMS.

23

CONCURRENCY CONTROL STUDY

slide-25
SLIDE 25

IN-MEMORY MULTI-VERSION

The DBMS’s concurrency control protocol is not the only critical part of executing txns in a DBMS.

23

CONCURRENCY CONTROL STUDY

slide-26
SLIDE 26

IN-MEMORY MULTI-VERSION

The DBMS’s concurrency control protocol is not the only critical part of executing txns in a DBMS. → Secondary Indexes → Version Storage / Ordering → Garbage Collection

23

CONCURRENCY CONTROL STUDY

slide-27
SLIDE 27

IN-MEMORY MULTI-VERSION

24

CONCURRENCY CONTROL STUDY

30 60 90 2 8 16 24 32 40 Oracle/MySQL NuoDB HYRISE MemSQL HyPer SAP HANA Hekaton Postgres

# of Threads Throughput (K txn/sec) MVCC Configurations

Hybrid Workload TPC-C + OLAP Query (40wh)

AN EMPIRICAL EVALUATION OF IN-MEMORY MULTI-VERSION CONCURRENCY CONTROL VLDB 2017

2.5

slide-28
SLIDE 28

RE-EXAMINE DBMS

Most applications are in the same data center as the DBMS machine. Kernel bypass methods: → RDMA → Intel DPDK Prefetching with machine learning.

25

COMMUNICATION OVERHEAD

slide-29
SLIDE 29

UNDERSTAND LOWER

We don’t understand how applications are affected by lower isolation levels. Maybe READ COMMITTED is good enough or maybe people don’t know how dirty their data actually is…

26

ISOLATION LEVELS

slide-30
SLIDE 30

WHAT ARE WE DOING WITH OUR LIVES?

It is (still) an interesting time for database research. Let’s make sure we work on the right problems. We need a better way of collecting information about applications.

27

CONCLUSION

slide-31
SLIDE 31

SOME PEOPLE DO CARE ABOUT OUR

28

CONCURRENCY CONTROL RESEARCH

Serializable Snapshot Isolation Michael Cahill Deterministic Concurrency Control Dan Abadi

slide-32
SLIDE 32

END

@andy_pavlo

slide-33
SLIDE 33

Joy Arulraj

Winter 2018

3