Synopses & Reviews
MongoDB in Action is a comprehensive guide to MongoDB for application developers. The book begins by explaining what makes MongoDB unique and describing its ideal use cases. A series of tutorials designed for MongoDB mastery then leads into detailed examples for leveraging MongoDB in e-commerce, social networking, analytics, and other common applications. About the Technology
Big data can mean big headaches. MongoDB is a document-oriented database designed to be flexible, scalable, and very fast, even with big data loads. It's built for high availability, supports rich, dynamic schemas, and lets you easily distribute data across multiple servers. About this Book
MongoDB in Action introduces you to MongoDB and the document-oriented database model. This perfectly paced book provides both the big picture you'll need as a developer and enough low-level detail to satisfy a system engineer. Numerous examples will help you develop confidence in the crucial area of data modeling. You'll also love the deep explanations of each feature, including replication, auto-sharding, and deployment
This book is written for developers. No MongoDB or NoSQL experience required.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. What's Inside
- Indexes, queries, and standard DB operations
- Map-reduce for custom aggregations and reporting
- Schema design patterns
- Deploying for scale and high availability
Table of Contents
PART 1 GETTING STARTED
- A database for the modern web
- Writing programs using MongoDB
PART 2 APPLICATION DEVELOPMENT IN MONGODB
- Document-oriented data
- Queries and aggregation
- Updates, atomic operations, and deletes
PART 3 MONGODB MASTERY
- Indexing and query optimization
- Deployment and administration
MongoDB is a document-oriented database that's highly scalable and delivers very high-performance, especially with massive data sets that need to be spread across multiple servers. It blends the things you expect with any database - like indexing, querying, and high availability - with powerful new features like easy horizontal scaling ("auto-sharding"), map/reduce aggregation, and a flexible document data model to support dynamic schemas.
MongoDB in Action is a comprehensive guide to MongoDB for application developers. The book begins by explaining what makes MongoDB unique and describing its ideal use cases. A series of tutorials designed for MongoDB mastery then leads into detailed examples for leveraging MongoDB in e-commerce, social networking, analytics, and other common applications.
How does MongoDB help you manage a huMONGOus amount of data collected through your web application? With this authoritative introduction, you'll learn the many advantages of using document-oriented databases, and discover why MongoDB is a reliable, high-performance system that allows for almost infinite horizontal scalability.
Written by engineers from 10gen, the company that develops and supports this open source database, MongoDB: The Definitive Guide provides guidance for database developers, advanced configuration for system administrators, and an overview of the concepts and use cases for other people on your project. Learn how easy it is to handle data as self-contained JSON-style documents, rather than as records in a relational database.
- Explore ways that document-oriented storage will work for your project
- Learn how MongoDBs schema-free data model handles documents, collections, and multiple databases
- Execute basic write operations, and create complex queries to find data with any criteria
- Use indexes, aggregation tools, and other advanced query techniques
- Learn about monitoring, security and authentication, backup and repair, and more
- Set up master-slave and automatic failover replication in MongoDB
- Use sharding to scale MongoDB horizontally, and learn how it impacts applications
- Get example applications written in Java, PHP, Python, and Ruby
About the Author
Kristina Chodorow, a software engineer at 10gen, is a core contributor to the MongoDB project and has worked on the database server, PHP driver, Perl driver, and many other areas. Shes given talks at conferences around the world, including OSCON, LinuxCon, FOSDEM, and Latinoware.
Mike Dirolf, also a software engineer at 10gen, is the lead maintainer for PyMongo (the MongoDB Python driver), and the former maintainer for the MongoDB Ruby driver. Hes given talks about MongoDB at major conferences around the world.
Table of Contents
Foreword; Preface; How This Book Is Organized; Conventions Used in This Book; Using Code Examples; Safari® Books Online; How to Contact Us; Acknowledgments; Chapter 1: Introduction; 1.1 A Rich Data Model; 1.2 Easy Scaling; 1.3 Tons of Features
Without Sacrificing Speed; 1.5 Simple Administration; 1.6 But Wait, Thats Not All
; Chapter 2: Getting Started; 2.1 Documents; 2.2 Collections; 2.3 Databases; 2.4 Getting and Starting MongoDB; 2.5 MongoDB Shell; 2.6 Data Types; Chapter 3: Creating, Updating, and Deleting Documents; 3.1 Inserting and Saving Documents; 3.2 Removing Documents; 3.3 Updating Documents; 3.4 The Fastest Write This Side of Mississippi; 3.5 Requests and Connections; Chapter 4: Querying; 4.1 Introduction to find; 4.2 Query Criteria; 4.3 Type-Specific Queries; 4.4 $where Queries; 4.5 Cursors; 4.6 Cursor Internals; Chapter 5: Indexing; 5.1 Introduction to Indexing; 5.2 Unique Indexes; 5.3 Using explain and hint; 5.4 Index Administration; 5.5 Geospatial Indexing; Chapter 6: Aggregation; 6.1 count; 6.2 distinct; 6.3 group; 6.4 MapReduce; Chapter 7: Advanced Topics; 7.1 Database Commands; 7.2 Capped Collections; 7.3 GridFS: Storing Files; 7.4 Server-Side Scripting; 7.5 Database References; Chapter 8: Administration; 8.1 Starting and Stopping MongoDB; 8.2 Monitoring; 8.3 Security and Authentication; 8.4 Backup and Repair; Chapter 9: Replication; 9.1 Master-Slave Replication; 9.2 Replica Sets; 9.3 Performing Operations on a Slave; 9.4 How It Works; 9.5 Administration; Chapter 10: Sharding; 10.1 Introduction to Sharding; 10.2 Autosharding in MongoDB; 10.3 The Key to Sharding: Shard Keys; 10.4 Setting Up Sharding; 10.5 Production Configuration; 10.6 Sharding Administration; Chapter 11: Example Applications; 11.1 Chemical Search Engine: Java; 11.2 News Aggregator: PHP; 11.3 Custom Submission Forms: Ruby; 11.4 Real-Time Analytics: Python; Installing MongoDB; Choosing a Version; Windows Install; POSIX (Linux, Mac OS X, and Solaris) Install; mongo: The Shell; Shell Utilities; MongoDB Internals; BSON; Wire Protocol; Data Files; Namespaces and Extents; Memory-Mapped Storage Engine; Colophon;