Download - Data Antipatterns

Transcript
Page 1: Data Antipatterns

ANTI PATTERNS

DATA

Page 2: Data Antipatterns

ines @ Engine Yard.com @Randommood

And I’m a happy dog!

I N E SS O M B R A

I work with Databases

Page 3: Data Antipatterns

Engine Yard

Page 4: Data Antipatterns

ZOMG, the horror!

Page 5: Data Antipatterns

.BACKUPSyes, we are going there

Page 6: Data Antipatterns

“I know you. You know you. And I know you

know that I know you”

White Goodman (no relationship to White October)

Page 7: Data Antipatterns

Boring Definition #1

Backups

Copy and archiving of data

Goal is to restore the state of a DB

Many types - blah

Page 8: Data Antipatterns

Anti-Pattern #1

Taking too many

backups

Not free, they requires resources

Full backup every hour, really? What about backup retention?

Page 9: Data Antipatterns

Anti-Pattern #2

Taking too few

backups

Enough to minimize the risk of data loss due to corrupted backup files

yes,����������� ������������������  this����������� ������������������  totes����������� ������������������  happens!

Page 10: Data Antipatterns

The untested backup

Anti-Pattern #3

Page 11: Data Antipatterns

Doing backups right

Logically test

backups

Errorless restore is not enough. Test logical data too

Page 12: Data Antipatterns

Doing backups right

Know your types &

tools

Take logical and binary backups

Continuous archiving & hot backup utilities

Page 13: Data Antipatterns

Doing backups right

Practice restores

Backups alone do not constitute DR. Have a plan & practice it

Server extensions and configuration matter when restoring

Page 14: Data Antipatterns

“I want a ridiculously

good looking

Database”Derek Zoolander

(honestly, Ben Stiller rules)

Page 15: Data Antipatterns

Obvious statement #1

Many DB choices

Page 16: Data Antipatterns

Cargo culting your

database

Anti-Pattern #4

Failure to understand use case, strengths & weaknesses of a new database

Page 17: Data Antipatterns

RDBMS for Session

Data

Anti-Pattern #5 Often means at least one write per request

Any DB issue/task may cause app to hang

Tables have a tendency to bloat

Page 18: Data Antipatterns

Modeling, it’s all the same

Anti-Pattern #6

Page 19: Data Antipatterns

Data Model

Consistency needs

Availability needs

Scaling needsOperational story & cost

Doing it right

Know your needs

Page 20: Data Antipatterns

Doing it right

Spike it, forealsies

Spike it with your data and traffic. Best way to gain operational experience

Page 21: Data Antipatterns

Doing it right

Leverage new

features

Relational databases are getting quite versatile

Evaluate clustered MySQL options

Page 22: Data Antipatterns

We have a cloud deployment!Happy team on shipping day, lmfao if you don’t celebrate like this

Page 23: Data Antipatterns

Cloud-based databases,

they are real

Obvious statement #2 Databases can live in the cloud quite well

Many IaaS, PaaS, & DBaaS options

Easy to get started & may be economical

Page 24: Data Antipatterns

Where did my instance go?

Anti-Pattern #7

Page 25: Data Antipatterns

Anti-Pattern #8

Cloud, it’s just like

hardware

It’s not. Cloud resources are virtualized

Capacity planning and monitoring matter. A lot

Page 26: Data Antipatterns

Anti-Pattern #9

Shit doesn’t happen

You are not immune to infrastructure failures. Plan for it

Page 27: Data Antipatterns

Anti-Pattern #10

Storage is the same

Instance storage is not persisted (use EBS)

Data locality matters

Don’t run your cloud DBs too hot!

Page 28: Data Antipatterns

Doing cloud right

Know your cloud

deployments

Replication in the cloud is a must-have

Put DB master & replicas in different AZs

Page 29: Data Antipatterns

Doing cloud right

Learn high availability &

disaster recovery

Get good at replica promotions (some work involved)Understand and invest in DR/HA. Know your options

Page 30: Data Antipatterns

Doing cloud right

Know your system

Invest in monitoring

Know your data distribution & querying patterns

Know baseline behavior

Page 31: Data Antipatterns

Questions?


Top Related