NoSQL on AWS - Pop-up Loft Tel Aviv

15
NoSQL at Scale: Architecture and Common Pitfalls Arthur Gimpel DataZone

Transcript of NoSQL on AWS - Pop-up Loft Tel Aviv

Page 1: NoSQL on AWS - Pop-up Loft Tel Aviv

NoSQL at Scale: Architecture and Common Pitfalls

Arthur Gimpel DataZone

Page 2: NoSQL on AWS - Pop-up Loft Tel Aviv

About Me

• Working with databases for the past 8 years

• 5 years as SQL Server DBA & .NET

• 3 years with NoSQL, Python, Node.js

• 2015 - DataZone

Page 3: NoSQL on AWS - Pop-up Loft Tel Aviv

DataZone Data is our business

• High end consultancy & projects

• Private and public training

• Multi vendor MSP (Managed Service Provider)

• Part of Matrix, CloudZone Family

• Proud partners of:

Page 4: NoSQL on AWS - Pop-up Loft Tel Aviv

NoSQL Why not?

Page 5: NoSQL on AWS - Pop-up Loft Tel Aviv

All the wrong reasons..

• Web scale! web scale!

• Cost reduction

• Free school for developers

Page 6: NoSQL on AWS - Pop-up Loft Tel Aviv

Common Pitfalls & Best Practices

Page 7: NoSQL on AWS - Pop-up Loft Tel Aviv

Normalizing in the low cost storage era

Page 8: NoSQL on AWS - Pop-up Loft Tel Aviv

Expectations gone wild• Stored procedures

• Jobs

• Triggers

• Mailing Servers

• Shell Commands

Page 9: NoSQL on AWS - Pop-up Loft Tel Aviv

ODM != ORMORM

• Close the modelling gaps

• Simple Standard CRUD

ODM

• Typing the untyped

• Retries

• Transactions

• Events

Page 10: NoSQL on AWS - Pop-up Loft Tel Aviv

Best Practices• DynamoDB

• Streams: Change Data Capture

• Cross region replication & synchronisation

• Event driven development: Send your new user a welcome email

• Polyglot Persistence: Initiate an ETL, update your Elasticsearch index

Page 11: NoSQL on AWS - Pop-up Loft Tel Aviv

Best Practices• Elasticsearch

• AWS Plugin:

• Allow service discovery based on security groups

• Run snapshots & restore directly to/from s3

• Storage:

• In small clusters, use EBS.

• In large clusters, use instance store, if you have replication enabled.

• Leverage Watcher & AWS Lambda for anything!

Page 12: NoSQL on AWS - Pop-up Loft Tel Aviv

Best Practices• Couchbase

• XDCR: • Make sure you use cross datacenter replication for multi

region deployments

• Use encrypted communication, especially on XDCR

• Sizing: • All members must be identical

• Prefer Memory & IO Optimized for most deplyments

Page 13: NoSQL on AWS - Pop-up Loft Tel Aviv

When Family Can Be Chosen

• Every engine has its flavours - know your tradeoffs

• Splitting drives is good for on prem. EBS is different

• Scaling up & down is always X2

• Prefer linux AMI by AWS- always check for official support

Page 14: NoSQL on AWS - Pop-up Loft Tel Aviv

Eventually…• Don’t work for technology. Make technology for

you. Chose your engines wisely

• Beware of your cluster’s distribution model - don’t over-estimate elasticity

• Experimenting is easy: Change, Benchmark, Analyse. Repeat.

• Run engine backups - not EBS snapshots

Page 15: NoSQL on AWS - Pop-up Loft Tel Aviv

Thank You!

Arthur Gimpel [email protected]