Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Sharding why,what,when, how

Curious about the benefits of sharding your MongoDB deployments? Do you need help deciding when you should shard, or which collections to shard first? Or maybe you just need some guidance on finding the right shard key. This session will cover these topics and give you a primer on MongoDB sharding and why it makes the database so compelling for so many applications. This is an entry-level to medium-level talk with references and links to more advanced material on sharding MongoDB.

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

  • Gehören Sie zu den Ersten, denen das gefällt!

Sharding why,what,when, how

  1. 1. Sharding in 20 minutes Why;Who;When;Where; David Murphy , Mongo Master Lead DBA, ObjectRocket @dmurphy_data @objectrocket
  2. 2. Background • 16 yrs in databases, development, & system engineering • Lead DBA @ ObjectRocket • Mongo Master with a focus on sharding, chunks, and scaling mongo beyond normal means.
  3. 3. What does a sharded cluster look like?
  4. 4. Why;Who;When;Where; i) Why do we shard? ii) Who should I shard? iii) When do we shard? iv) Where is my shard key
  5. 5. Why do we shard? • Scaling out write locks
  6. 6. Why do we shard? • Scaling out write locks • Small dataset to search per node
  7. 7. Why do we shard? • Scaling out write locks • Small dataset to search per node • Getting more connections to the data
  8. 8. Why do we shard? • Scaling out write locks • Small dataset to search per node • Getting more connections to the data • More smaller node vs Scaling up to expensive nodes
  9. 9. Who should I shard? • Biggest Collections by Size
  10. 10. Who should I shard? • Biggest Collections by Size • Busiest Collection by changes
  11. 11. Who should I shard? • Biggest Collections by Size • Busiest Collection by changes • Groupings of data (example): • State/Country • UserID • Company • Category
  12. 12. When do I shard? ALWAYS as early as possible!
  13. 13. When do I shard? ALWAYS as early as possible! Reasons: • Not all commands work
  14. 14. When do I shard? ALWAYS as early as possible! Reasons: • Not all commands work • Future Proof - No recoding
  15. 15. When do I shard? ALWAYS as early as possible! Reasons: • Not all commands work • Future Proof - No recoding • Adding index once your live can take time you don’t have!
  16. 16. Where (and what) is my shard key? You have to pick your own :/ But there are some quick hints…
  17. 17. Where (and what) is my shard key? Sharding Quick Hints: • Hashed Shard keys Great for even disk usage Uses Scatter-Gathers == More Conns Dates,Increasing IDs , and text are great here
  18. 18. Where (and what) is my shard key? Sharding Quick Hints: • Hashed Shard keys Great for even disk usage Uses Scatter-Gathers == More Conns Dates,Increasing IDs , and text are great here • Non-Hashed Keys Use profiler_level:2 & review ALL operations Things you wont change only No Dates No Increasing ID numbers No Text
  19. 19. Why mongo sharding/balancing Modulus Sharding with MySQL: Hard to rebalance online Requires application coding to support Ring Topologies like Cassandra - Cant change schema online Hard to rebalance online
  20. 20. Further Reading Presentations: Kenny Gorman Sharding - bit.ly/1oXYDfm David Murphy - Adv Sharding for Operations - bit.ly/1oXYDfm Other Sharding MongoDB Links - bit.ly/ZTtDI1 Picking a shard key (manual) - http://bit.ly/1ozuzMH Choosing a shard key - http://slidesha.re/1nBnGtq
  21. 21. Contact @dmurphy_data @objectrocket david@objectrocket.com https://www.objectrocket.com WE ARE HIRING! (DBA,DEVOPS, and more) https://www.objectrocket.com/careers

×