couchbase at cox automotive – couchbase live new york 2015

42

Upload: couchbase

Post on 27-Jan-2017

673 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Couchbase at Cox Automotive – Couchbase Live New York 2015
Page 2: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox Automotive

Page 3: Couchbase at Cox Automotive – Couchbase Live New York 2015

3

Who we are

Page 4: Couchbase at Cox Automotive – Couchbase Live New York 2015

4

Who we are

Page 5: Couchbase at Cox Automotive – Couchbase Live New York 2015

5

Who we are

Page 6: Couchbase at Cox Automotive – Couchbase Live New York 2015

6

What we do at

Page 7: Couchbase at Cox Automotive – Couchbase Live New York 2015

7

What we do at

Page 8: Couchbase at Cox Automotive – Couchbase Live New York 2015

8

What we do at

Page 9: Couchbase at Cox Automotive – Couchbase Live New York 2015

9

Our data changes quickly

Page 10: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox AutomotiveKeeping pace with our data

Page 11: Couchbase at Cox Automotive – Couchbase Live New York 2015

11

What sort of data do we store?

Page 12: Couchbase at Cox Automotive – Couchbase Live New York 2015

12

What sort of data do we store?

Page 13: Couchbase at Cox Automotive – Couchbase Live New York 2015

13

What sort of data do we store?

Page 14: Couchbase at Cox Automotive – Couchbase Live New York 2015

14

How do we keep pace with our data?

Page 15: Couchbase at Cox Automotive – Couchbase Live New York 2015

15

How do we keep pace with our data?

Page 16: Couchbase at Cox Automotive – Couchbase Live New York 2015

16

How do we keep pace with our data?

Page 17: Couchbase at Cox Automotive – Couchbase Live New York 2015

17

How do we keep pace with our data?

Page 18: Couchbase at Cox Automotive – Couchbase Live New York 2015

18

How do we keep pace with our data?

Two weeks to get to production!

Page 19: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox AutomotiveAccelerating our pace

Page 20: Couchbase at Cox Automotive – Couchbase Live New York 2015

20

We churn through truckloads of data

Page 21: Couchbase at Cox Automotive – Couchbase Live New York 2015

21

We churn through truckloads of data

Page 22: Couchbase at Cox Automotive – Couchbase Live New York 2015

22

An API with Couchbase storage

Page 23: Couchbase at Cox Automotive – Couchbase Live New York 2015

23

An API with Couchbase storage

Page 24: Couchbase at Cox Automotive – Couchbase Live New York 2015

24

An API with Couchbase storage

Page 25: Couchbase at Cox Automotive – Couchbase Live New York 2015

25

Implementation

API design features

• RESTful endpoints• Use of JSON format and immutable documents• Cached access to SQL Server look ups for configuration• Couchbase storage for speed and flexibility

Page 26: Couchbase at Cox Automotive – Couchbase Live New York 2015

26

It’s simple to move our data into documents

SQL Server crashes when we try to list all our “staging” tables!

Page 27: Couchbase at Cox Automotive – Couchbase Live New York 2015

27

It’s simple to move our data into documents{ "ImageURLs": [ "http://www.xhjsdfk.com/15234.jpg", "http://www.xhjsdfk.com/93784.jpg", "http://wwwxhjsdfk.com/13378.jpg" ], "Properties": { "BodyStyle": "2dr Car", "TransmissionSpeed": 6, "TransmissionTypeCode": "6-Speed Ma", "VehicleCondition": "New", "Year": 2021, }, "VIN": "1TAGP28135G148557" }, "Timestamp": "2015-10-05T13:38:46.2979624-04:00", "Version": 1}

JSON lends itself to flexible storage

There’s no schema

Page 28: Couchbase at Cox Automotive – Couchbase Live New York 2015

28

It’s simple to move our data into documents

We coded an additive storage process.

Say we get this input first….

Page 29: Couchbase at Cox Automotive – Couchbase Live New York 2015

29

It’s simple to move our data into documents

And then we get this data, for the same vehicle…

Page 30: Couchbase at Cox Automotive – Couchbase Live New York 2015

30

It’s simple to move our data into documents

We produce a resulting document…

Page 31: Couchbase at Cox Automotive – Couchbase Live New York 2015

31

It’s simple to move our data into documents

Now we’ve solved our

archiving problem andour rollback problem!

Version 1 Version 2

Page 32: Couchbase at Cox Automotive – Couchbase Live New York 2015

32

How we got operational in two data centers

Now we use Couchbase as our database of record for this data,

we want resiliency with XDCR

Page 33: Couchbase at Cox Automotive – Couchbase Live New York 2015

33

How we got operational in two data centers

Remember that TTL setting for the cached data?

Here’s some free advice

Page 34: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox AutomotiveStaying at the front of the pack

Page 35: Couchbase at Cox Automotive – Couchbase Live New York 2015

35

Wow; we’re maxed out again!

We have a fancy SQL Server*doing the heavy lifting

- 4 TB of primary data- Gigabytes of change per minute- 60 CPU cores!- 2TB RAM- 12TB Fusion IO cards!

*cluster of 3 machines

Page 36: Couchbase at Cox Automotive – Couchbase Live New York 2015

36

Data model migration

Forward plans for SQL and NoSQL

OPERATIONAL CACHEDCOMPUTED

RAW DATA

Page 37: Couchbase at Cox Automotive – Couchbase Live New York 2015

37

What functions should Couchbase serve?

• Easing the load for heavy-read objects from SQL Server• Applications where ‘eventually consistent’ is OK• Outbound ‘file’ storage for computed documents

• Novel queries against unstructured documents can leverage N1QL• When the query load is unpredictable, it can scale fast

Page 38: Couchbase at Cox Automotive – Couchbase Live New York 2015

38

Future steps: How to migrate production data?

Our traditional approach

PRODUCTION STAGINGRESTORE

QA ENV.

C# APP

Page 39: Couchbase at Cox Automotive – Couchbase Live New York 2015

39

Future steps: How to migrate production data?

With Couchbase 4.0

PRODUCTION STAGINGRESTORE

QA ENV.

XDCRFilter

Page 40: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox AutomotiveConclusion

Page 41: Couchbase at Cox Automotive – Couchbase Live New York 2015

41

How we began with Couchbase

“Start where you are.”- Chris Gardner

Page 42: Couchbase at Cox Automotive – Couchbase Live New York 2015

Couchbase at Cox AutomotiveQuestions