SlideShare a Scribd company logo
Administration
        Michael DelNegro
 Principal Database Administrator
               AOL



                1
Presentation Overview
• Introduction
• My Applications
• Tips
• Tools
• Resources
• Upcoming
                    2
About Me
• DBA at AOL (Dulles) for six years
• Background in Sybase
• Now MySQL, PostgreSQL and NoSQL
• Was: Blogsmith, Uncut Video, Travel, Autos,
  Journals, Real Estate, Ficlets, Shopping
• Currently: Patch, MapQuest, HSS,
  Datalayer, Demand
• I Heart Big Data
                       3
About MongoDB
• “Scalable, high-performance, open source,
  document-oriented database”
• Databases (Databases)
 • Collections (Tables)
    • Documents (Rows)
     • Fields (Columns) - K/V Pairs
• Indexes
• No Joins
 • Favors Embedding Data instead of FKs
                     4
More About MongoDB
• JSON-style Documents
• Javascript Shell
• Capped Collections
• Flexible Schemas
• Replication w/ Autofailover
• Sharding
• GridFS: File Storage
• Map-Reduce         5
MongoDB Support
• Operating Systems
 • Linux, Windows, Mac OS X, Solaris
 • 32bit, 64bit
• Drivers
 • Java, Javascript, Perl, Ruby, Scala, Erlang, C,
     C#, C++, Haskell, PHP, Python
  • R, Smalltalk, node.js, ColdFusion
                        6
MongoDB Use Cases
• Website Data Store
• Caching Tier
• Document and Content Mgmt Systems
• Event Logging
• Real-time Stats/Analytics
• Archiving
• High Volume Problems
                  7
MongoDB Misuse

• Complex Transactional Systems
• Traditional Business Intelligence
• SQL is a Must

                      8
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


                      9
MapQuest App
• Tracks User Profile Information
• V. 1.6.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
• Java                10
Patch App
• Tracks User Activity
• Master, 2 Slaves
• V. 1.6.3
• About 100GB of data
• Throwaway Data (for now)
• Ruby on Rails
                   11
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
                       12
Nearby Patch Sites
• Vienna (ex. vienna.patch.com)
• Ashburn
• Reston
• McLean
• CollegePark
• GreaterAnnapolis
• 50+ in DC Area
                      13
Upcoming Ops Plans

• Upgrade to 1.8
• Migrate Patch to Replica Sets
• Move MapQuest to bigger hardware (16GB
  -> 64GB memory)
• Add additional slaves

                     14
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()
                     15
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
• Linux dirty_background_ratio and
  dirty_ratio (pre 2.6.22)
                     16
Even More Admin Tips
• Omit parenthesis to see command details
• 5 Primitives of Mongo
 • insert, remove, update, find, getMore
• Replication is a slave polling master process
• Master and slaves each have their own
  oplog
• Choose shard key carefully (ex. timestamp)
                      17
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()
                     18
More Admin Tools
• mongostat
• db.printReplicationInfo()
• db.serverStatus()
• db.<collection>.stats()
• Database Profiler
• Explain
                     19
Admin Resources
• mongodb.org
 • Events
 • Forums
• Wordnik Mongo Admin Tools (Github)
• Mongo Snippets (Github)
• IRC (freenode #mongodb)
• Little MongoDB Book
                   20
More Admin Resources
• slideshare (Use Time-Based Search)
• GUI Admin Tools
 • MongoVUE
 • Others
• Kristina Chodorow's Blog
• Boxed Ice
                    21
Even More Resources
• Follow @MongoQuestion (StackOverflow)
• MongoDB on Quora (@q_mongodb)
• 10gen Deployment Strategies Slides
• Books
• Training
• 10gen Support
• Office Hours in NYC and Redwood City
                  22
New MongoDB Release
• 1.8 (Released March 16)
 • Single Server Durability (Journaling)
 • Enhancements to Sharding & Replica Sets
 • Covered and Sparse Indexes
 • Tab Completion
 • Maximum BSON Document: 16MB
 • 1.8 Features Presentation
                    23
Future Releases
• 2.0 (May/June?)
 • Better Map-Reduce and Aggregation
 • Improved Concurrency
 • Online Compaction
 • TTL Time-Out Collections
• Beyond
 • Full-Text Search?
                   24
Thank You!

• www.slideshare.net/radiocats
• @radiocats on Twitter
• www.linkedin.com/in/mdelnegro

                   25

More Related Content

KEY
Mongo db admin_20110316
PDF
Presto Meetup (2015-03-19)
PPTX
Python Ireland Conference 2016 - Python and MongoDB Workshop
KEY
MongoDB Administration ~ Kevin Hanson
KEY
MongoDB Administration 20110922
PPTX
MongoDB Replication fundamentals - Desert Code Camp - October 2014
PDF
Key-Value-Stores -- The Key to Scaling?
PDF
BuilHigh Performance Weibo Platform-Qcon2011
Mongo db admin_20110316
Presto Meetup (2015-03-19)
Python Ireland Conference 2016 - Python and MongoDB Workshop
MongoDB Administration ~ Kevin Hanson
MongoDB Administration 20110922
MongoDB Replication fundamentals - Desert Code Camp - October 2014
Key-Value-Stores -- The Key to Scaling?
BuilHigh Performance Weibo Platform-Qcon2011

What's hot (20)

PDF
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
PPTX
MongoDB
PDF
Cassandra at Vast
PPT
Wmware NoSQL
PDF
CosmosDB for DBAs & Developers
PDF
20141206 4 q14_dataconference_i_am_your_db
PPTX
The Hive Think Tank: Rocking the Database World with RocksDB
PDF
Ndb cluster 80_ycsb_disk
PDF
Presto Meetup @ Facebook (3/22/2016)
PDF
Beyond Postgres: Interesting Projects, Tools and forks
PPTX
The Hive Think Tank: Rocking the Database World with RocksDB
PDF
2016 jan-pugs-meetup-v9.5-features
PDF
NOSQL Overview
PDF
RocksDB meetup
PDF
PGDay.Seoul 2016 lightingtalk
PPTX
How to ensure Presto scalability 
in multi use case
PDF
Orchestrating MySQL
PPTX
Webinar 2017. Supercharge your analytics with ClickHouse. Vadim Tkachenko
PDF
Иван Глушков (Echo)
PPTX
Introduction to CosmosDB - Azure Bootcamp 2018
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
MongoDB
Cassandra at Vast
Wmware NoSQL
CosmosDB for DBAs & Developers
20141206 4 q14_dataconference_i_am_your_db
The Hive Think Tank: Rocking the Database World with RocksDB
Ndb cluster 80_ycsb_disk
Presto Meetup @ Facebook (3/22/2016)
Beyond Postgres: Interesting Projects, Tools and forks
The Hive Think Tank: Rocking the Database World with RocksDB
2016 jan-pugs-meetup-v9.5-features
NOSQL Overview
RocksDB meetup
PGDay.Seoul 2016 lightingtalk
How to ensure Presto scalability 
in multi use case
Orchestrating MySQL
Webinar 2017. Supercharge your analytics with ClickHouse. Vadim Tkachenko
Иван Глушков (Echo)
Introduction to CosmosDB - Azure Bootcamp 2018
Ad

Similar to Mongo db admin_20110329 (20)

PPTX
Operationalizing MongoDB at AOL
PPTX
MongoDC 2012: "Operationalizing" MongoDB@AOL
PDF
Austin Cassandra Users 6/19: Apache Cassandra at Vast
PDF
The MySQL Server ecosystem in 2016
PDF
The MySQL Server ecosystem in 2016
PPTX
Hadoop ppt on the basics and architecture
PPTX
Drop acid
PDF
Your backend architecture is what matters slideshare
PDF
MySQL in the Hosted Cloud
PPTX
Agility and Scalability with MongoDB
PDF
Pldc2012 monitoring-and-trending-with-mysql
PPTX
How does Apache Pegasus (incubating) community develop at SensorsData
PPTX
Meetup#2: Building responsive Symbology & Suggest WebService
PPTX
Monitoring MongoDB’s Engines in the Wild
PDF
City of Atlanta Oracle Application Footprint
PDF
Intro to big data choco devday - 23-01-2014
PDF
Webinar - DreamObjects/Ceph Case Study
PDF
MySQL in the Cloud
PDF
OSDC 2017 | Lessons from database failures by Colin Charles
PDF
The MySQL Server Ecosystem in 2016
Operationalizing MongoDB at AOL
MongoDC 2012: "Operationalizing" MongoDB@AOL
Austin Cassandra Users 6/19: Apache Cassandra at Vast
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
Hadoop ppt on the basics and architecture
Drop acid
Your backend architecture is what matters slideshare
MySQL in the Hosted Cloud
Agility and Scalability with MongoDB
Pldc2012 monitoring-and-trending-with-mysql
How does Apache Pegasus (incubating) community develop at SensorsData
Meetup#2: Building responsive Symbology & Suggest WebService
Monitoring MongoDB’s Engines in the Wild
City of Atlanta Oracle Application Footprint
Intro to big data choco devday - 23-01-2014
Webinar - DreamObjects/Ceph Case Study
MySQL in the Cloud
OSDC 2017 | Lessons from database failures by Colin Charles
The MySQL Server Ecosystem in 2016
Ad

Recently uploaded (20)

PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Spectroscopy.pptx food analysis technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation theory and applications.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Empathic Computing: Creating Shared Understanding
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Building Integrated photovoltaic BIPV_UPV.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Spectroscopy.pptx food analysis technology
Network Security Unit 5.pdf for BCA BBA.
Chapter 3 Spatial Domain Image Processing.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Encapsulation_ Review paper, used for researhc scholars
Per capita expenditure prediction using model stacking based on satellite ima...
The AUB Centre for AI in Media Proposal.docx
Spectral efficient network and resource selection model in 5G networks
Encapsulation theory and applications.pdf
Programs and apps: productivity, graphics, security and other tools
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Empathic Computing: Creating Shared Understanding
20250228 LYD VKU AI Blended-Learning.pptx
Review of recent advances in non-invasive hemoglobin estimation
Digital-Transformation-Roadmap-for-Companies.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

Mongo db admin_20110329

  • 1. Administration Michael DelNegro Principal Database Administrator AOL 1
  • 2. Presentation Overview • Introduction • My Applications • Tips • Tools • Resources • Upcoming 2
  • 3. About Me • DBA at AOL (Dulles) for six years • Background in Sybase • Now MySQL, PostgreSQL and NoSQL • Was: Blogsmith, Uncut Video, Travel, Autos, Journals, Real Estate, Ficlets, Shopping • Currently: Patch, MapQuest, HSS, Datalayer, Demand • I Heart Big Data 3
  • 4. About MongoDB • “Scalable, high-performance, open source, document-oriented database” • Databases (Databases) • Collections (Tables) • Documents (Rows) • Fields (Columns) - K/V Pairs • Indexes • No Joins • Favors Embedding Data instead of FKs 4
  • 5. More About MongoDB • JSON-style Documents • Javascript Shell • Capped Collections • Flexible Schemas • Replication w/ Autofailover • Sharding • GridFS: File Storage • Map-Reduce 5
  • 6. MongoDB Support • Operating Systems • Linux, Windows, Mac OS X, Solaris • 32bit, 64bit • Drivers • Java, Javascript, Perl, Ruby, Scala, Erlang, C, C#, C++, Haskell, PHP, Python • R, Smalltalk, node.js, ColdFusion 6
  • 7. MongoDB Use Cases • Website Data Store • Caching Tier • Document and Content Mgmt Systems • Event Logging • Real-time Stats/Analytics • Archiving • High Volume Problems 7
  • 8. MongoDB Misuse • Complex Transactional Systems • Traditional Business Intelligence • SQL is a Must 8
  • 9. 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 9
  • 10. MapQuest App • Tracks User Profile Information • V. 1.6.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 • Java 10
  • 11. Patch App • Tracks User Activity • Master, 2 Slaves • V. 1.6.3 • About 100GB of data • Throwaway Data (for now) • Ruby on Rails 11
  • 12. 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 12
  • 13. Nearby Patch Sites • Vienna (ex. vienna.patch.com) • Ashburn • Reston • McLean • CollegePark • GreaterAnnapolis • 50+ in DC Area 13
  • 14. Upcoming Ops Plans • Upgrade to 1.8 • Migrate Patch to Replica Sets • Move MapQuest to bigger hardware (16GB -> 64GB memory) • Add additional slaves 14
  • 15. 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() 15
  • 16. 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 • Linux dirty_background_ratio and dirty_ratio (pre 2.6.22) 16
  • 17. Even More Admin Tips • Omit parenthesis to see command details • 5 Primitives of Mongo • insert, remove, update, find, getMore • Replication is a slave polling master process • Master and slaves each have their own oplog • Choose shard key carefully (ex. timestamp) 17
  • 18. 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() 18
  • 19. More Admin Tools • mongostat • db.printReplicationInfo() • db.serverStatus() • db.<collection>.stats() • Database Profiler • Explain 19
  • 20. Admin Resources • mongodb.org • Events • Forums • Wordnik Mongo Admin Tools (Github) • Mongo Snippets (Github) • IRC (freenode #mongodb) • Little MongoDB Book 20
  • 21. More Admin Resources • slideshare (Use Time-Based Search) • GUI Admin Tools • MongoVUE • Others • Kristina Chodorow's Blog • Boxed Ice 21
  • 22. Even More Resources • Follow @MongoQuestion (StackOverflow) • MongoDB on Quora (@q_mongodb) • 10gen Deployment Strategies Slides • Books • Training • 10gen Support • Office Hours in NYC and Redwood City 22
  • 23. New MongoDB Release • 1.8 (Released March 16) • Single Server Durability (Journaling) • Enhancements to Sharding & Replica Sets • Covered and Sparse Indexes • Tab Completion • Maximum BSON Document: 16MB • 1.8 Features Presentation 23
  • 24. Future Releases • 2.0 (May/June?) • Better Map-Reduce and Aggregation • Improved Concurrency • Online Compaction • TTL Time-Out Collections • Beyond • Full-Text Search? 24
  • 25. Thank You! • www.slideshare.net/radiocats • @radiocats on Twitter • www.linkedin.com/in/mdelnegro 25

Editor's Notes