Contents
Chapter 1: Introduction to MongoDB
Reviewing the MongoDB Philosophy
Using the Right Tool for the Right Job
Lacking Innate Support for Transactions
Adopting a Nonrelational Approach
Opting for Performance vs. Features
Using Document-Oriented Storage (BSON)
Using Map and Reduce Functions
The All-New Aggregation Framework
Chatting with the MongoDB Developers
Cutting and Pasting MongoDB Code
Finding Solutions on Google Groups
Leveraging the JIRA Tracking System
Understanding the Version Numbers
Installing MongoDB on Your System
Installing MongoDB under Linux
Installing MongoDB under Windows
Surveying the Installation Layout
Confirming That Your PHP Installation Works
Confirming That Your PyMongo Installation Works
Impacting Performance with Indexes
Implementing Geospatial Indexing
Querying Geospatial Information
Using MongoDB in the Real World
Viewing Available Databases and Collections
Inserting Data into Collections
Using the Sort, Limit, and Skip Functions
Working with Capped Collections, Natural Order, and $natural
Using the Aggregation Commands
Working with Conditional Operators
Leveraging Regular Expressions
Implementing an Upsert with the save( ) Command
Updating Information Automatically
Specifying the Position of a Matched Array
Modifying and Returning a Document Atomically
Implementing Index-Related Functions
Surveying Index-Related Commands
Forcing a Specified Index to Query Data
Getting Started with the Command-Line Tools
Exploiting the Power of Python
Part 2: Developing with MongoDB
Comparing Documents in MongoDB and PHP
Querying for Specific Information
Sorting, Limiting, and Skipping Items
Counting the Number of Matching Results
Grouping Data with the Aggregation Framework
Specifying the Index with Hint
Refining Queries with Conditional Operators
Saving Time with Update Operators
Modifying a Document Atomically
Adding More Metadata to Stored Files
Working with Documents in Python
Simplifying Queries with sort( ), limit( ), and skip( )
Specifying an Index with hint( )
Refining Queries with Conditional Operators
Conducting Searches with Regular Expressions
Saving Documents Quickly with save( )
Modifying a Document Atomically
Putting the Parameters to Work
Creating a Link Between Two Documents
Text Search Costs and Limitations
Text Indexes in Other Languages
Compound Indexing with Text Indexes
Part 3: Advanced MongoDB with Big Data
Chapter 9: Database Administration
Using Third-Party Administration Tools
Backing Up a Single Collection
Restoring Individual Databases or Collections
Using a Remote (Cloud-Based) Datastore
Using a Hidden Secondary Server for Backups
Creating Snapshots with a Journaling Filesystem
Disk Layout to Use with Volume Managers
Securing Your Data by Restricting Access to a MongoDB Server
Protecting Your Server with Authentication
Authenticating in the mongo Console
Using Authenticated Connections in a PHP Application
Validating and Repairing Your Data
Validating a Single Collection
Repairing Collection Validation Faults
Repairing a Collection’s Datafiles
Compacting a Collection’s Datafiles
Using the MongoDB Management Service (MMS)
Optimizing Your Server Hardware for Performance
Understanding How MongoDB Uses Memory
Understanding Working Set Size
Choosing the Right Database Server Hardware
Analyzing a Specific Query with explain( )
Using the Profiler and explain( ) to Optimize a Query
Creating an Index in the Background with {background:true}
Creating an Index with a Unique Key {unique:true}
Dropping Duplicates Automatically with {dropdups:true}
Creating Sparse Indexes with {sparse:true}
How MongoDB Selects Which Indexes It Will Use
Using hint( ) to Force Using a Specific Index
Optimizing the Storage of Small Objects
Spelling Out MongoDB’s Replication Goals
Improving Durability/Reliability
Getting a Replica Set Member Up and Running
Adding a Server to a Replica Set
Configuring the Options for Replica Set Members
Connecting to a Replica Set from Your Application
Exploring the Need for Sharding
Partitioning Horizontal and Vertical Data
Partitioning Data Horizontally
Analyzing a Simple Sharding Scenario
Implementing Sharding with MongoDB
Setting Up a Sharding Configuration
Determining How You’re Connected
Listing the Status of a Sharded Cluster
18.227.49.160