data antipatterns

31
ANTI PATTERNS DATA

Upload: ines-sombra

Post on 18-Dec-2014

336 views

Category:

Technology


1 download

DESCRIPTION

Are you running a database in the cloud? Worried that you're doing it wrong? Engine Yard supports a broad set of databases with flexibility for customers to modify and configure. However, freedom to adapt and extend standard functionality comes with unexpected negative consequences: modifications can seriously affect durability and performance. I've observed common problems, patterns and best practices with big (and not so big) data. I'll highlight the most common pitfalls and discuss how to avoid them. Video for this talk is available here: http://vimeo.com/83755776

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?