Mongo db admin_20110316

1,497 views
1,454 views

Published on

MongoDB Administration Slides - Keynote version

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,497
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Mongo db admin_20110316

    1. 1. Administration Michael DelNegro Principal Database Administrator AOL
    2. 2. About Me• DBA at AOL (Dulles) for six years• Background in Sybase• Now MySQL, PostgreSQL and NoSQL• I heart Big Data• Operations
    3. 3. MongoDB at AOL• In use since Summer 2010• I currently administer two applications for MapQuest and Patch• There are other MongoDB applications in use throughout the company and more on the way
    4. 4. MapQuest App• Tracks User Profile Information• V. 16.5.latest (just upgraded from 1.6.3)• 26 Total Hosts, CentOS 5, 16GB RAM• 300 million users, 130 million saved maps• Replica Sets• 3 Sharded Collections • lookup, east coast, west coast
    5. 5. Patch App• Tracks User Activity• Master, 2 Slaves• V. 1.6.3• About 100GB of data• Throwaway data (for now)
    6. 6. About Patch• “HyperLocal” news sites across the country• Fills gap in coverage left by local newspapers• Currently 800 sites are live• 1000+ by end of 2011
    7. 7. Nearby Patch Sites• Vienna (ex. vienna.patch.com)• Ashburn• Reston• McLean• CollegePark• GreaterAnnapolis• 50+ in DC Area
    8. 8. Upcoming Ops Plans• Upgrade to 1.8• Migrate Patch to Replica Sets• Move MapQuest to bigger hardware (16GB -> 64GB memory)• Add additional slaves
    9. 9. Admin Tips• Slaves are a MUST pre1.8• Use 64 bit version • 32 bit version has 2.5 GB storage limit• Use xfs or ext4• Keep eye on oplog size• Turn off atime & dtime• Consider using getLastError()
    10. 10. More Admin Tips• Increase File Descriptor Limits• Do not use kill -9 (pre-1.8)• Consider having a slave on replication delay • -- slavedelay <seconds>• db.runCommand(“logRotate”)• Keep db.<collection>.totalIndexSize() less than RAM
    11. 11. Even More Admin Tips• Omit parenthesis to see command details• 5 Primitives of Mongo • insert, remove, update, find, getMore• Replication is slave polling master process• Master and slaves each have their own oplog• Choose shard key carefully (ex. timestamp)
    12. 12. Admin Tools• mongodump-mongorestore • use fsync and lock database to ensure consistent backup• fsync and lock are a must for file system backups (ex LVM)• http://localhost:28017 (server port + 1000)• db.currentOp()
    13. 13. More Admin Tools• mongostat• db.printReplicationInfo()• db.serverStatus()• db.<collection>.stats()• Database Profiler• Explain
    14. 14. Admin Resources• mongodb.org • Events • Forums• Wordnik Mongo Admin Tools (Github)• Mongo Snippets (Github)• IRC (freenode #mongodb)
    15. 15. More Admin Resources• slideshare (use time-based search)• GUI Admin Tools • MongoVUE • Others• Kristina Chodorows Blog• Boxed Ice
    16. 16. Even More Resources• Follow @MongoQuestion (StackOverflow)• MongoDB on Quora (@q_mongodb)• 10gen Deployment Strategies Slides• Books• Training• 10gen Support
    17. 17. New MongoDB Release• 1.8 (Out Today! - March 16) • Single server durability (journaling) • Enhancements to sharding & replica sets • Covered indexes • Tab Completion • Rename fields without pulling down object
    18. 18. Future Releases• 2.0 (May/June?) • Better map-reduce and aggregation • Improved concurrency • Online compaction • TTL time-out collections• Beyond • full-text search?
    19. 19. Thank You!• www.slideshare.net/radiocats• @radiocats on Twitter• www.linkedin.com/in/mdelnegro

    ×