《给MongoDB开发者的50条建议》(50 Tips and Tricks for MongoDB Developers: Get the Most Out of Your Database)英文文字版/更新EPUB版本[PDF]

  • 状态: 精华资源
  • 摘要:
  • 时间: 2011/06/12 14:18:09 发布 | 2011/06/12 16:22:29 更新
  • 分类: 图书  计算机与网络 


精华资源: 330

全部资源: 330

相关: 分享到新浪微博   转播到腾讯微博   分享到开心网   分享到人人   分享到QQ空间   订阅本资源RSS更新   美味书签  subtitle
原名50 Tips and Tricks for MongoDB Developers: Get the Most Out of Your Database

IPB Image


Getting started with MongoDB is easy, but once you begin building applications with it, you'll face some complex issues. What are the tradeoffs between normalized and denormalized data? How do you handle replica set failure and failover? This collection of MongoDB tips, tricks, and hacks helps you resolve issues with everything from application design and implementation to data safety and monitoring.

You get specific guidance in five topic areas directly from engineers at 10gen, the company that develops and supports this open source database:

Application Design Tips: What to keep in mind when designing your schema
Implementation Tips: Programming applications against MongoDB
Optimization Tips: Speeding up your applications
Data Safety Tips: Using replication and journaling to keep data safe—without sacrificing too much performance
Administration Tips: How to configure MongoDB and keep it running smoothly


IPB Image


Chapter 1 Application Design Tips
Tip #1: Duplicate data for speed, reference data for integrity
Tip #2: Normalize if you need to future-proof data
Tip #3: Try to fetch data in a single query
Tip #4: Embed dependent fields
Tip #5: Embed “point-in-time” data
Tip #6: Do not embed fields that have unbound growth
Tip #7: Pre-populate anything you can
Tip #8: Preallocate space, whenever possible
Tip #9: Store embedded information in arrays for anonymous access
Tip #10: Design documents to be self-sufficient
Tip #11: Prefer $-operators to JavaScript
Tip #12: Compute aggregations as you go
Tip #13: Write code to handle data integrity issues
Chapter 2 Implementation Tips
Tip #14: Use the correct types
Tip #15: Override _id when you have your own simple, unique id
Tip #16: Avoid using a document for _id
Tip #17: Do not use database references
Tip #18: Don’t use GridFS for small binary data
Tip #19: Handle “seamless” failover
Tip #20: Handle replica set failure and failover
Chapter 3 Optimization Tips
Tip #21: Minimize disk access
Tip #22: Use indexes to do more with less memory
Tip #23: Don’t always use an index
Tip #24: Create indexes that cover your queries
Tip #25: Use compound indexes to make multiple queries fast
Tip #26: Create hierarchical documents for faster scans
Tip #27: AND-queries should match as little as possible as fast as possible
Tip #28: OR-queries should match as much as possible as soon as possible
Chapter 4 Data Safety and Consistency
Tip #29: Write to the journal for single server, replicas for multiserver
Tip #30: Always use replication, journaling, or both
Tip #31: Do not depend on repair to recover data
Tip #32: Understand getlasterror
Tip #33: Always use safe writes in development
Tip #34: Use w with replication
Tip #35: Always use wtimeout with w
Tip #36: Don’t use fsync on every write
Tip #37: Start up normally after a crash
Tip #38: Take instant-in-time backups of durable servers
Chapter 5 Administration Tips
Tip #39: Manually clean up your chunks collections
Tip #40: Compact databases with repair
Tip #41: Don’t change the number of votes for members of a replica set
Tip #42: Replica sets can be reconfigured without a master up
Tip #43: --shardsvr and --configsvr aren’t required
Tip #44: Only use --notablescan in development
Tip #45: Learn some JavaScript
Tip #46: Manage all of your servers and databases from one shell
Tip #47: Get “help” for any function
Tip #48: Create startup files
Tip #49: Add your own functions
Tip #50: Use a single connection to read your own writes






(?) [公告]留口水、评论相关规则

  1. 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  2. 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  3. 勿催片。请相信驴友们对分享是富有激情的,如果确有更新版本,您一定能搜索到。
  4. 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
  5. 如果您发现自己的评论不见了,请参考以上4条。