# Database Manual - (manual) (Part 2 of 10) > This part of the MongoDB manual finishes core concepts like encryption and transactions, plus installation, introduction, and the MongoDB Query API. - [Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption.md): Explore how to encrypt sensitive data fields client-side, store them encrypted server-side, and run queries without server knowledge using Queryable Encryption. - [Choosing an In-Use Encryption Approach](https://www.mongodb.com/docs/manual/core/queryable-encryption/about-qe-csfle.md) - [Queryable Encryption Features](https://www.mongodb.com/docs/manual/core/queryable-encryption/features.md): Explore the security benefits and mechanisms of Queryable Encryption, including its ability to encrypt data while maintaining queryability. - [Queryable Encryption Fundamentals](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals.md): Explore the fundamentals of Queryable Encryption, including creating encryption schemas, enabling encrypted collections, and managing encryption keys. - [Enabling Queryable Encryption when Creating Collections](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/enable-qe.md) - [Encrypted Fields and Enabled Queries](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/encrypt-and-query.md): Define encrypted fields at the collection level. Use an encryption schema to encrypt fields, and to enable and configure queries on those fields. Affects performance and storage. - [Encryption Keys and Key Vaults](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/keys-key-vaults.md): Learn about encryption keys, key vaults, and key management systems in MongoDB, including how to manage Data Encryption Keys and Customer Master Keys. - [KMS Providers](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/kms-providers.md): Explore the advantages and configurations of using remote Key Management System providers for encryption in MongoDB applications. - [Encrypted Collections](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/manage-collections.md): Understand the storage and write impact of encrypting collections in MongoDB and learn how to manage encrypted collection indexes to minimize costs. - [Rotate and Rewrap Encryption Keys](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/manage-keys.md): Learn how to manage and rotate encryption keys using a Key Management System for Queryable Encryption in MongoDB. - [Queryable Encryption with Explicit Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/fundamentals/manual-encryption.md): Use ClientEncryption and specify encryption algorithms and parameters to explicitly encrypt fields in your application, and to read from or write to those fields while maintaining encryption. - [Install and Configure a Query Analysis Component](https://www.mongodb.com/docs/manual/core/queryable-encryption/install-library.md) - [Install a Queryable Encryption Compatible Driver and Dependencies](https://www.mongodb.com/docs/manual/core/queryable-encryption/install.md): Install a compatible driver and dependencies to enable Queryable Encryption in your development environment. - [Overview: Enable Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/overview-enable-qe.md) - [Overview: Use Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/overview-use-qe.md) - [Create your Queryable Encryption Enabled Application](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-create-application.md) - [Create a Customer Master Key](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-create-cmk.md) - [Create an Encrypted Collection and Insert Documents](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-create-encrypted-collection.md) - [Create an Encryption Schema](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-create-encryption-schema.md): Create an encryption schema to define which fields are encrypted and which query types are allowed on those fields. - [Estimate Queryable Encryption Storage Impact](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-estimate-storage-impact.md): Estimate the storage and write amplification impact of your Queryable Encryption configuration before finalizing your encryption schema. - [Query a Document with Encrypted Fields](https://www.mongodb.com/docs/manual/core/queryable-encryption/qe-retrieve-encrypted-document.md) - [Queryable Encryption Quick Start](https://www.mongodb.com/docs/manual/core/queryable-encryption/quick-start.md): Learn how to build a sample application that uses MongoDB Queryable Encryption to automatically encrypt and decrypt sensitive document fields, such as SSN and billing information. - [Queryable Encryption Reference](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference.md): Explore components of Queryable Encryption, including supported operations and MongoClient options. - [Compatibility](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference/compatibility.md): Determine compatibility of MongoDB editions and drivers with Queryable Encryption and Client-Side Field Level Encryption features. - [Queryable Encryption Limitations](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference/limitations.md): Understand the limitations and restrictions of enabling Queryable Encryption, including unsupported operations and security considerations. - [MongoClient Options for Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference/qe-options-clients.md): Explore configuration options for `MongoClient` instances to enable Queryable Encryption, including automatic encryption settings and key management. - [Supported Operations for Queryable Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/reference/supported-operations.md): Explore supported operations for Queryable Encryption, including data types, commands, and query operators compatible with automatic encryption. - [Queryable Encryption Tutorials](https://www.mongodb.com/docs/manual/core/queryable-encryption/tutorials.md): Explore tutorials on using Queryable Encryption with various Key Management Systems, featuring sample applications in multiple programming languages. - [Use Explicit Encryption](https://www.mongodb.com/docs/manual/core/queryable-encryption/tutorials/explicit-encryption.md): Use explicit encryption to encrypt and decrypt document fields with MongoDB drivers, including creating the customer master key, data encryption keys, and the encrypted collection. - [Ranged Sharding](https://www.mongodb.com/docs/manual/core/ranged-sharding.md): Implement range-based sharding by dividing data into contiguous ranges using shard key values for efficient queries. - [Read Isolation, Consistency, and Recency](https://www.mongodb.com/docs/manual/core/read-isolation-consistency-recency.md): Explore MongoDB's read isolation, consistency, and recency, including isolation guarantees, causal consistency, and limitations of causally consistent sessions. - [Hedged Read Option](https://www.mongodb.com/docs/manual/core/read-preference-hedge-option.md): Specify hedged reads for non-primary read preferences in sharded clusters, noting their deprecation starting in MongoDB 8.0. - [Server Selection Algorithm](https://www.mongodb.com/docs/manual/core/read-preference-mechanics.md): Explore how MongoDB drivers use server selection algorithms to choose replica set members or `mongos` instances based on read preferences and latency. - [Read Preference ``maxStalenessSeconds``](https://www.mongodb.com/docs/manual/core/read-preference-staleness.md): Specify `maxStalenessSeconds` to limit replication lag for reads from secondaries, ensuring they don't fall too far behind the primary's writes. - [Read Preference Tag Set Lists](https://www.mongodb.com/docs/manual/core/read-preference-tags.md): Specify a tag set list in read preferences to target replica set members with specific tags, enhancing read operations based on tag matching. - [Read Preference Use Cases](https://www.mongodb.com/docs/manual/core/read-preference-use-cases.md): Explore common use cases and considerations for different MongoDB read preference modes, including when to use non-primary modes for operations and availability. - [Read Preference](https://www.mongodb.com/docs/manual/core/read-preference.md): Read preference describes how MongoDB clients route read operations to the members of a replica set. - [Replica Set Arbiter](https://www.mongodb.com/docs/manual/core/replica-set-arbiter.md): Understand the role of an arbiter in a replica set, including its participation in elections and limitations in data operations. - [Replica Sets Distributed Across Two or More Data Centers](https://www.mongodb.com/docs/manual/core/replica-set-architecture-geographically-distributed.md): Distribute replica set members across multiple data centers to enhance redundancy and fault tolerance against data center failures. - [Three Member Replica Sets](https://www.mongodb.com/docs/manual/core/replica-set-architecture-three-members.md): Explore the benefits and configurations of three-member replica sets, including setups with two secondaries or an arbiter for redundancy and high availability. - [Replica Set Deployment Architectures](https://www.mongodb.com/docs/manual/core/replica-set-architectures.md): Explore strategies and common architectures for deploying replica sets, including considerations for member count, fault tolerance, and geographic distribution. - [Delayed Replica Set Members](https://www.mongodb.com/docs/manual/core/replica-set-delayed-member.md): Understand how delayed replica set members provide a rolling backup by maintaining a historical snapshot of data, useful for recovering from errors. - [Replica Set Elections](https://www.mongodb.com/docs/manual/core/replica-set-elections.md): Understand how replica set elections determine the primary node in response to events like node addition, maintenance, or connectivity loss. - [Hidden Replica Set Members](https://www.mongodb.com/docs/manual/core/replica-set-hidden-member.md): Understand the role and behavior of hidden replica set members, which maintain data copies without being visible to client applications. - [Replica Set High Availability](https://www.mongodb.com/docs/manual/core/replica-set-high-availability.md): Understand how replica sets use elections to maintain high availability and manage rollbacks during failovers. - [Replica Set Members](https://www.mongodb.com/docs/manual/core/replica-set-members.md): Understand the roles and configurations of primary, secondary, and arbiter members in a MongoDB replica set for redundancy and high availability. - [Replica Set Oplog](https://www.mongodb.com/docs/manual/core/replica-set-oplog.md): Understand the role and management of the oplog in MongoDB replica sets, including its size, retention, and application behavior. - [Replica Set Primary](https://www.mongodb.com/docs/manual/core/replica-set-primary.md): Understand the role of the primary in a replica set, handling write operations and elections for primary selection. - [Priority 0 Replica Set Members](https://www.mongodb.com/docs/manual/core/replica-set-priority-0-member.md): Configure a priority 0 replica set member to prevent it from becoming primary, useful for high-latency or standby scenarios. - [Rollbacks During Replica Set Failover](https://www.mongodb.com/docs/manual/core/replica-set-rollbacks.md): Revert write operations on a former primary during replica set failover to maintain database consistency. - [Replica Set Secondary Members](https://www.mongodb.com/docs/manual/core/replica-set-secondary.md): Understand how secondary members in a replica set maintain data copies and can become primary during failover. - [Replica Set Data Synchronization](https://www.mongodb.com/docs/manual/core/replica-set-sync.md): Understand how secondary members in a replica set synchronize data from a source member using initial sync and ongoing replication processes. - [Write Concern for Replica Sets](https://www.mongodb.com/docs/manual/core/replica-set-write-concern.md): Configure write concern for replica sets to ensure data durability and manage latency by specifying the number of members that must acknowledge a write. - [Reshard to the Same Shard Key](https://www.mongodb.com/docs/manual/core/reshard-to-same-key.md): Reshard to the Same Shard Key to Shard a Collection, Add or Remove Shards Concept - [Retryable Reads](https://www.mongodb.com/docs/manual/core/retryable-reads.md): Enable retryable reads in MongoDB drivers to automatically retry certain read operations once upon encountering network or server errors. - [Retryable Writes](https://www.mongodb.com/docs/manual/core/retryable-writes.md): Enable automatic retries for specific write operations in MongoDB. Handle persistent network errors and replica set issues with retryable writes. - [Rolling Index Builds](https://www.mongodb.com/docs/manual/core/rolling-index-builds.md) - [Schema Validation](https://www.mongodb.com/docs/manual/core/schema-validation.md): Use schema validation to prevent unintended schema changes and data type errors. Specify validation rules for fields, including data types, value ranges, and required fields. - [Bypass Schema Validation](https://www.mongodb.com/docs/manual/core/schema-validation/bypass-document-validation.md): Bypass schema validation rules for specific operations, allowing insertion of documents that don't meet current validation criteria. - [Choose How to Handle Invalid Documents](https://www.mongodb.com/docs/manual/core/schema-validation/handle-invalid-documents.md): Specify how MongoDB handles documents violating validation rules, either rejecting them or logging the violations. - [Specify JSON Schema Validation](https://www.mongodb.com/docs/manual/core/schema-validation/specify-json-schema.md): Use JSON Schema to specify validation rules for collection fields in a human-readable format. Define required fields, data types, and field value ranges. - [Tips for JSON Schema Validation](https://www.mongodb.com/docs/manual/core/schema-validation/specify-json-schema/json-schema-tips.md) - [Specify Allowed Field Values](https://www.mongodb.com/docs/manual/core/schema-validation/specify-json-schema/specify-allowed-field-values.md) - [Specify Validation With Query Operators](https://www.mongodb.com/docs/manual/core/schema-validation/specify-query-expression-rules.md): Specify validation rules using query operators to ensure field values are correctly proportional, with examples of creating and validating collections. - [Specify Validation Level for Existing Documents](https://www.mongodb.com/docs/manual/core/schema-validation/specify-validation-level.md): Specify how MongoDB applies validation rules to existing documents using the strict, moderate, and constraint validation levels. - [Specify Validation for Polymorphic Collections](https://www.mongodb.com/docs/manual/core/schema-validation/specify-validation-polymorphic-collections.md): Specify schema validation on a polymorphic collection, or a collection with multiple schemas. - [Modify Schema Validation](https://www.mongodb.com/docs/manual/core/schema-validation/update-schema-validation.md): Modify schema validation rules in MongoDB collections using the `collMod` command to update validation criteria like field requirements and lengths. - [Query for and Modify Valid or Invalid Documents](https://www.mongodb.com/docs/manual/core/schema-validation/use-json-schema-query-conditions.md) - [View Existing Validation Rules](https://www.mongodb.com/docs/manual/core/schema-validation/view-existing-validation-rules.md): View validation rules for a collection using db.getCollectionInfos() or listCollections to understand document restrictions and handling of invalid documents. - [Encryption](https://www.mongodb.com/docs/manual/core/security-data-encryption.md): Explore MongoDB's encryption methods, including in-use encryption, encryption at rest, and TLS/SSL for secure data handling. - [Encryption at Rest](https://www.mongodb.com/docs/manual/core/security-encryption-at-rest.md): Ensure compliance with security standards by using encryption at rest in MongoDB Enterprise, including key management and storage engine options. - [Self-Managed Network and Configuration Hardening](https://www.mongodb.com/docs/manual/core/security-hardening.md): Harden your MongoDB deployment by securing network access, configuring firewalls, using VPNs, and disabling IP forwarding to reduce risk exposure. - [In-Use Encryption](https://www.mongodb.com/docs/manual/core/security-in-use-encryption.md): Explore MongoDB's in-use encryption options, including Queryable Encryption and Client-Side Field Level Encryption, and their key management strategies. - [Self-Managed Internal/Membership Authentication](https://www.mongodb.com/docs/manual/core/security-internal-authentication.md): Enable internal authentication for replica sets and sharded clusters using keyfiles or X.509 certificates for secure communication. - [LDAP Authorization on Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/security-ldap-external.md): Configure LDAP authorization for MongoDB deployments, mapping LDAP group DNs to roles for user access control. - [Self-Managed LDAP Proxy Authentication](https://www.mongodb.com/docs/manual/core/security-ldap.md): Configure LDAP authentication for MongoDB Enterprise using operating system libraries or `saslauthd` for secure user authentication. - [IP Binding in Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/security-mongodb-configuration.md): Configure IP binding for `mongod` and `mongos` to ensure secure access on trusted networks, using options like `net.bindIpAll` for broader address binding. - [SCRAM](https://www.mongodb.com/docs/manual/core/security-scram.md): Explore SCRAM, the default authentication mechanism in MongoDB, offering secure password verification and supporting SHA-1 and SHA-256 hashing functions. - [TLS/SSL (Transport Encryption)](https://www.mongodb.com/docs/manual/core/security-transport-encryption.md): Secure MongoDB network traffic with TLS/SSL, supporting strong ciphers and forward secrecy, and manage certificates for encryption and identity verification. - [User-Defined Roles on Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/security-user-defined-roles.md): Create custom user-defined roles in MongoDB when built-in roles don't meet your privilege requirements, using the `db.createRole()` method. - [Users in Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/security-users.md): Manage users in self-managed MongoDB deployments by creating, updating, and assigning roles, with special considerations for LDAP and sharded clusters. - [x.509](https://www.mongodb.com/docs/manual/core/security-x.509.md): Authenticate MongoDB clients and cluster members using X.509 certificates, requiring TLS/SSL connections and specific certificate attributes. - [Self-Managed Security](https://www.mongodb.com/docs/manual/core/self-managed-security.md): Learn about securing self-managed MongoDB document database deployments. - [Server-side JavaScript](https://www.mongodb.com/docs/manual/core/server-side-javascript.md): Explore server-side JavaScript functions in MongoDB, including how to enable or disable execution and which commands, methods, and operators run server-side code. - [Sharded Cluster Components](https://www.mongodb.com/docs/manual/core/sharded-cluster-components.md): Explore components of a MongoDB sharded cluster, including shards, `mongos` routers, and config servers. Learn about production and development configurations. - [Config Servers](https://www.mongodb.com/docs/manual/core/sharded-cluster-config-servers.md): Understand the role of config servers in a sharded cluster, including storing metadata, managing distributed locks, and transitioning to config shards. - [Routing with mongos](https://www.mongodb.com/docs/manual/core/sharded-cluster-query-router.md): Route queries and write operations to shards in a sharded cluster using `mongos`, which caches metadata from config servers and has no persistent state. - [Operational Restrictions in Sharded Clusters](https://www.mongodb.com/docs/manual/core/sharded-cluster-requirements.md): Understand operational restrictions in sharded clusters, including limitations on certain operations and index consistency requirements. - [Shards](https://www.mongodb.com/docs/manual/core/sharded-cluster-shards.md): Understand the role of shards in a sharded cluster, including primary shard selection, shard status, and security measures. - [Sharded Cluster Balancer](https://www.mongodb.com/docs/manual/core/sharding-balancer-administration.md): Understand how the MongoDB balancer manages data distribution across shards, including migration thresholds, range migration procedures, and performance tuning. - [Change a Shard Key](https://www.mongodb.com/docs/manual/core/sharding-change-a-shard-key.md): Learn how to change a shard key in MongoDB to improve data distribution and query performance by resharding or refining the shard key. - [Change a Document's Shard Key Value](https://www.mongodb.com/docs/manual/core/sharding-change-shard-key-value.md): Update a document's shard key value using specific commands, ensuring operations are performed on `mongos` and include the full shard key in the query filter. - [Choose a Shard Key](https://www.mongodb.com/docs/manual/core/sharding-choose-a-shard-key.md): Choose a shard key that optimizes data distribution and query efficiency in a sharded cluster, considering cardinality, frequency, and monotonicity. - [Consolidate Collection Data](https://www.mongodb.com/docs/manual/core/sharding-consolidate-collection-data.md) - [Data Partitioning with Chunks](https://www.mongodb.com/docs/manual/core/sharding-data-partitioning.md): Partition data into chunks using shard keys in MongoDB, manage chunk distribution with the balancer, and address jumbo chunks with shard key refinement. - [Distribute Collection Data](https://www.mongodb.com/docs/manual/core/sharding-distribute-collection-data.md) - [Display a Shard Key](https://www.mongodb.com/docs/manual/core/sharding-find-shard-key.md): Discover how to find the shard key for a sharded collection by using the `db.printShardingStatus()` method on a `mongos` instance. - [Manage Unsharded Collections](https://www.mongodb.com/docs/manual/core/sharding-manage-unsharded-collections.md) - [Refine a Shard Key](https://www.mongodb.com/docs/manual/core/sharding-refine-a-shard-key.md): Refine a shard key to improve data distribution by adding suffix fields, avoiding changes to existing key types to prevent inconsistencies. - [Reshard a Collection](https://www.mongodb.com/docs/manual/core/sharding-reshard-a-collection.md): Reshard a MongoDB sharded collection to change its shard key or redistribute data across shards, improving data distribution, query performance, and cluster balance. - [Scaling Strategies](https://www.mongodb.com/docs/manual/core/sharding-scaling-strategies.md) - [Set Missing Shard Key Fields](https://www.mongodb.com/docs/manual/core/sharding-set-missing-shard-key-fields.md): Set missing shard key fields to `null` using various MongoDB update methods, ensuring specific query conditions are met. - [Shard Key Indexes](https://www.mongodb.com/docs/manual/core/sharding-shard-key-indexes.md): Details on indexes that support shard keys in a sharded MongoDB collection and how to create unique indexes. - [Shard Keys](https://www.mongodb.com/docs/manual/core/sharding-shard-key.md): Understand how shard keys determine document distribution in MongoDB clusters and the importance of shard key indexes for sharded collections. - [Start with Sharded Clusters](https://www.mongodb.com/docs/manual/core/sharding-start-with-sharding.md) - [Troubleshoot Shard Keys](https://www.mongodb.com/docs/manual/core/sharding-troubleshooting-shard-keys.md): Identify and resolve common shard key issues like jumbo chunks, uneven load distribution, and decreased query performance in MongoDB clusters. - [Storage Engines for Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/storage-engines.md): Explore different storage engines in MongoDB, including WiredTiger and In-Memory, to optimize data management for specific workloads. - [Tailable Cursors](https://www.mongodb.com/docs/manual/core/tailable-cursors.md): Explore how tailable cursors in MongoDB allow continuous retrieval of documents from capped collections, similar to the Unix `tail -f` command. - [$text Query Operators](https://www.mongodb.com/docs/manual/core/text-search-operators.md): Run $text queries and sort results by relevance with the $meta operator. - [$text Queries](https://www.mongodb.com/docs/manual/core/text-search/on-prem.md): Explore capabilities for $text queries using text indexes to query string content. - [Time Series](https://www.mongodb.com/docs/manual/core/timeseries-collections.md): Improve query efficiency and reduce disk usage for time series data and secondary indexes by storing time series data in time series collections. - [Aggregation and Operator Considerations](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-aggregations-operators.md) - [Set up Automatic Removal for Time Series Collections (TTL)](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-automatic-removal.md): Set up automatic removal of documents in time series collections using the `expireAfterSeconds` parameter to manage data retention. - [Best Practices for Time Series Collections](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-best-practices.md): Optimize performance and data usage for time series collections by following best practices for compression, inserts, sharding, and queries. - [About Time Series Data](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-bucketing.md) - [Build Materialized Views on Top of Time Series Data](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-build-materialized-views.md): Create materialized views on time series data using the `$merge` aggregation pipeline stage for archiving, analytics, and controlled data access. - [List Time Series Collections in a Database](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-check-type.md): List all time series collections in a database using the `listCollections` command with a filter for `{ type: "timeseries" }`. - [Time Series Compression](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-compression.md): Discover how MongoDB uses zstd and column compression to optimize data storage in time series collections. - [Time Series Collections Considerations](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-considerations.md) - [Create and Configure Time Series Collections](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-create-configure.md): Create and configure time series collections in MongoDB. Learn procedures, granularity settings, and data migration for IoT and time-stamped data workloads. - [Set Granularity for Time Series Data](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-granularity.md): Set granularity for time series data in MongoDB to control data bucketing frequency, using custom parameters for precise bucket boundaries. - [Time Series Indexes](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-index.md): Index time series collections in MongoDB. Learn about secondary indexes, special considerations, limitations, and best practices for time-stamped data. - [Time Series Collection Limitations](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-limitations.md): Explore the limitations of time series collections in MongoDB, including unsupported features, aggregation restrictions, and sharding constraints. - [Migrate Data into a Time Series Collection](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-migrate-data-into-timeseries-collection.md): Migrate data into a time series collection using aggregation pipelines, database tools, or relational migrator for improved performance and storage. - [Migrate Data into a Time Series Collection with Aggregation](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-migrate-with-aggregation.md): Migrate data into a time series collection using aggregation pipelines with the $out stage for improved performance and storage. - [Migrate Data to Time Series Collection with Database Tools](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-migrate-with-tools.md) - [Create and Query a Time Series Collection](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-procedures.md): Learn how to create and query a time series collection in MongoDB, including setting fields, inserting data, and running aggregation pipelines. - [About Querying Time Series Data](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-querying.md) - [Time Series Quick Start](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-quick-start.md): Quick start for creating a time series collection with self-managed MongoDB or Atlas - [Add Secondary Indexes to Time Series Collections](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-secondary-index.md): Improve query performance for time series collections by adding secondary indexes, including compound indexes on `metaField` and `timeField`. - [Shard a Time Series Collection](https://www.mongodb.com/docs/manual/core/timeseries/timeseries-shard-collection.md): Learn how to shard new or existing time series collections in MongoDB, including prerequisites and step-by-step procedures. - [Obtain TLS Server Certificates](https://www.mongodb.com/docs/manual/core/tls/certificate-tutorial.md): Obtain TLS server certificates from a public or private certificate authority to enable encrypted connections for each node in your MongoDB replica set deployment. - [Connect to a TLS-Enabled Replica Set](https://www.mongodb.com/docs/manual/core/tls/configure-client-tls-tutorial.md): Connect mongosh to a TLS-enabled self-managed MongoDB replica set by presenting a client certificate or without one, depending on your server configuration. - [Configure TLS on Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/tls/configure-server-tls-tutorial.md): Configure a three-node self-managed MongoDB replica set to use TLS for network encryption, with or without intra-cluster mutual TLS certificate validation. - [Plan Your TLS Configuration for Self-Managed Deployments](https://www.mongodb.com/docs/manual/core/tls/plan-tls-deployment.md): Plan your TLS configuration for a self-managed MongoDB replica set. Learn deployment configurations, certificate types, and key terms to guide your TLS setup. - [Handle Transactions in Applications with the Drivers API](https://www.mongodb.com/docs/manual/core/transactions-in-applications.md): Explore how to handle transaction errors in applications using MongoDB drivers, including retry logic for transient and unknown commit errors, with the Callback and Core APIs. - [Transactions and Operations](https://www.mongodb.com/docs/manual/core/transactions-operations.md): Explore operations supported in MongoDB transactions, including CRUD operations, restrictions, and how to create collections and indexes within transactions. - [Production Considerations](https://www.mongodb.com/docs/manual/core/transactions-production-consideration.md): Consider transaction availability, feature compatibility, runtime limits, and oplog size when running transactions on replica sets or sharded clusters. - [Production Considerations (Sharded Clusters)](https://www.mongodb.com/docs/manual/core/transactions-sharded-clusters.md): Understand the considerations for running multi-document transactions on sharded clusters, including performance, read and write concerns, and chunk migrations. - [Transactions](https://www.mongodb.com/docs/manual/core/transactions.md): Use distributed transactions across multiple collections, databases, and documents for situations requiring atomicity of reads/writes to multiple documents. - [Unsharded Collections](https://www.mongodb.com/docs/manual/core/unsharded-collections.md) - [Views](https://www.mongodb.com/docs/manual/core/views.md): Views are read-only queryable objects defined by an aggregation pipeline. Use views to restrict data access and perform database queries like collection joins. - [Create and Query a View](https://www.mongodb.com/docs/manual/core/views/create-view.md): Create and query views in MongoDB using `db.createCollection()` or `db.createView()` with examples and restrictions. - [Use a View to Join Two Collections](https://www.mongodb.com/docs/manual/core/views/join-collections-with-view.md): Use $lookup to create a view over two collections and then run queries against the view without having to construct or maintain complex pipelines. - [Create a View with Default Collation](https://www.mongodb.com/docs/manual/core/views/specify-collation.md): Specify default collation for views to apply language-specific string comparison rules, affecting operations like counting documents. - [Supported Operations for Views](https://www.mongodb.com/docs/manual/core/views/supported-operations.md): Explore operations supported for views, including database commands and `mongosh` methods like `find`, `count`, and `aggregate`. - [Modify or Remove a View](https://www.mongodb.com/docs/manual/core/views/update-view.md): Modify a view in MongoDB by either dropping and recreating it or using the `collMod` command. - [WiredTiger Storage Engine](https://www.mongodb.com/docs/manual/core/wiredtiger.md): Learn how WiredTiger, MongoDB's default storage engine, handles document-level concurrency, MVCC snapshots, journaling, compression, and memory management. - [Workload Isolation in MongoDB Deployments](https://www.mongodb.com/docs/manual/core/workload-isolation.md): Explore how to isolate workloads in MongoDB deployments using features like read preferences, write concerns, replica set tags, and zones in sharded clusters. - [Atomicity and Transactions](https://www.mongodb.com/docs/manual/core/write-operations-atomicity.md): Understand atomicity in MongoDB write operations. Manage concurrent updates with transactions and unique indexes. - [Write Operation Performance](https://www.mongodb.com/docs/manual/core/write-performance.md): Optimize write performance by managing indexes and understanding the impact of journaling on MongoDB's write operations. - [Zones](https://www.mongodb.com/docs/manual/core/zone-sharding.md): Create zones in sharded clusters to manage data distribution based on shard keys, ensuring efficient data routing and balancing across shards. - [MongoDB CRUD Operations](https://www.mongodb.com/docs/manual/crud.md): Manage documents in collections by running create, read, update, and delete operations. - [Data Center Awareness](https://www.mongodb.com/docs/manual/data-center-awareness.md): Customize MongoDB deployments for data center awareness and workload isolation using zones and operational separation. - [Data Modeling in MongoDB](https://www.mongodb.com/docs/manual/data-modeling.md): Explore data modeling in MongoDB, focusing on flexible schema design, use cases, and advantages over relational database schemas. - [Best Practices for Data Modeling in MongoDB](https://www.mongodb.com/docs/manual/data-modeling/best-practices.md): Optimize MongoDB data models by considering atomicity, sharding, indexes, and storage strategies for efficient performance and data lifecycle management. - [Data Consistency](https://www.mongodb.com/docs/manual/data-modeling/data-consistency.md): Explore methods to enforce data consistency in MongoDB, including transactions, embedded data, and Atlas Database Triggers, based on application needs. - [Schema Design Anti-Patterns](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns.md) - [Bloated Documents](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns/bloated-documents.md) - [Reduce the Number of Collections](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns/reduce-collections.md) - [Reduce $lookup Operations](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns/reduce-lookup-operations.md) - [Avoid Unbounded Arrays](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns/unbounded-arrays.md) - [Remove Unnecessary Indexes](https://www.mongodb.com/docs/manual/data-modeling/design-antipatterns/unnecessary-indexes.md) - [Schema Design Patterns](https://www.mongodb.com/docs/manual/data-modeling/design-patterns.md): Optimize your data model with schema design patterns to enhance query performance and manage schema changes effectively. - [Archive Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/archive.md) - [Use the Approximation Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/computed-values/approximation-schema-pattern.md) - [Store Computed Data](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/computed-values/computed-schema-pattern.md) - [Document and Schema Versioning](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/data-versioning.md): Explore document and schema versioning patterns to manage schema changes without downtime or performance-intensive migrations. - [Keep a History of Document Versions](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/data-versioning/document-versioning.md): Implement the Document Versioning Pattern to retain historical versions of documents in a separate collection for applications requiring data history. - [Maintain Different Schema Versions](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/data-versioning/schema-versioning.md): Implement the Schema Versioning Pattern to manage different schema versions within a single MongoDB collection, avoiding large-scale migrations. - [Slowly Changing Dimensions](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/data-versioning/slowly-changing-dimensions.md): Implement the Slowly Changing Dimensions framework to track and query changes and different versions of fields in your documents over time. - [Group Data](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/group-data.md): Improve performance by grouping large data series into smaller ones using bucket and outlier patterns for better organization and handling of outliers. - [Group Data with the Attribute Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/group-data/attribute-pattern.md): Discover how the Attribute Pattern in MongoDB optimizes data modeling for flexible and scalable applications, enhancing your database design strategy. - [Group Data with the Bucket Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/group-data/bucket-pattern.md): Improve query access and simplify application logic by using the bucket pattern to group similar data into distinct objects, ideal for time series data. - [Group Data with the Outlier Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/group-data/outlier-pattern.md): Improve query performance by isolating outlier documents with the outlier pattern, storing excess data in a separate collection. - [Group Data with the Subset Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/group-data/subset-pattern.md): Improve query access by using the subset pattern to group highly accessed data into one collection and less frequently accessed data into another collection. - [Handle Computed Values](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/handle-computed-values.md) - [Polymorphic Data](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/polymorphic-data.md) - [Use the Inheritance Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/polymorphic-data/inheritance-schema-pattern.md) - [Store Polymorphic Data](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/polymorphic-data/polymorphic-schema-pattern.md) - [Single Collection Pattern](https://www.mongodb.com/docs/manual/data-modeling/design-patterns/single-collection.md) - [Embedded Data in Your MongoDB Schema](https://www.mongodb.com/docs/manual/data-modeling/embedding.md): Decide if embedding data in your MongoDB schema design will optimize application performance and data retrieval. - [Enforce Data Consistency with Embedding](https://www.mongodb.com/docs/manual/data-modeling/enforce-consistency/embed-data.md): Embed related data in a single collection to enforce consistency and simplify schema, ensuring users read the most current data without duplication. - [Enforce Data Consistency with Transactions](https://www.mongodb.com/docs/manual/data-modeling/enforce-consistency/transactions.md): Use transactions to ensure data consistency across collections with duplicated data, updating multiple collections atomically in MongoDB. - [Handle Duplicate Data](https://www.mongodb.com/docs/manual/data-modeling/handle-duplicate-data.md): Optimize data access by duplicating related data across collections, improving query performance while considering update frequency and storage costs. - [Reference Data in Your MongoDB Schema](https://www.mongodb.com/docs/manual/data-modeling/referencing.md): Decide if using references in your MongoDB schema design will optimize application performance and data retrieval. - [Designing Your Schema](https://www.mongodb.com/docs/manual/data-modeling/schema-design-process.md): Optimize your application's performance by following a schema design process that includes identifying workloads, mapping relationships, and creating indexes. - [Apply Design Patterns](https://www.mongodb.com/docs/manual/data-modeling/schema-design-process/apply-patterns.md): Optimize your data model using schema design patterns to enhance application performance and reduce complexity. - [Create Indexes to Support Your Queries](https://www.mongodb.com/docs/manual/data-modeling/schema-design-process/create-indexes.md) - [Identify Application Workload](https://www.mongodb.com/docs/manual/data-modeling/schema-design-process/identify-workload.md): Identify your application's frequent operations to optimize schema design and indexing for efficient database interactions. - [Map Schema Relationships](https://www.mongodb.com/docs/manual/data-modeling/schema-design-process/map-relationships.md): Map schema relationships by embedding related data or using references to optimize application performance and scalability. - [FAQ: Concurrency](https://www.mongodb.com/docs/manual/faq/concurrency.md): Explore how MongoDB uses locking and concurrency control to ensure data consistency during read and write operations. - [FAQ: Self-Managed MongoDB Diagnostics](https://www.mongodb.com/docs/manual/faq/diagnostics.md): Find answers to common diagnostic questions and issues for self-managed MongoDB deployments, including TCP settings and WiredTiger memory diagnostics. - [FAQ: MongoDB Fundamentals](https://www.mongodb.com/docs/manual/faq/fundamentals.md): Explore answers to common questions about MongoDB fundamentals, including platform support, collection schema, transactions, and caching. - [FAQ: Indexes](https://www.mongodb.com/docs/manual/faq/indexes.md): Explore common questions about MongoDB indexes, including creation, performance impact, monitoring, and strategies for optimizing index usage. - [FAQ: Replication and Replica Sets](https://www.mongodb.com/docs/manual/faq/replica-sets.md): Discover answers to common questions about MongoDB replication, including replica set configurations and journaling benefits. - [FAQ: Sharding with MongoDB](https://www.mongodb.com/docs/manual/faq/sharding.md): Explore common questions about sharding in MongoDB, including shard key selection, data distribution, and `mongos` connection management. - [FAQ: MongoDB Storage for Self-Managed Deployments](https://www.mongodb.com/docs/manual/faq/storage.md): Explore common questions about MongoDB's storage system, including storage engine fundamentals, recommendations, and diagnostics for self-managed deployments. - [Geospatial Queries](https://www.mongodb.com/docs/manual/geospatial-queries.md): How to query geospatial data such as geoJSON objects and legacy coordinate pairs. - [What is MongoDB?](https://www.mongodb.com/docs/manual/index.md): Learn how to use the MongoDB document database to build modern applications with flexible schemas, a powerful query language, and full-text search support. - [Indexes](https://www.mongodb.com/docs/manual/indexes.md): Create and manage indexes on collections to improve query performance. - [Install MongoDB Community and Enterprise Editions](https://www.mongodb.com/docs/manual/installation.md): Install MongoDB Community and Enterprise Editions on Linux, macOS, and Windows. The links on this page have additional installation information and resources. - [Introduction to MongoDB](https://www.mongodb.com/docs/manual/introduction.md): MongoDB is a document database designed for ease of development and scaling. Learn about the MongoDB data model, along with MongoDB's high performance. - [Legacy Opcodes](https://www.mongodb.com/docs/manual/legacy-opcodes.md): Explore legacy opcodes including OP_DELETE, OP_GET_MORE, OP_INSERT, OP_KILL_CURSORS, OP_QUERY, OP_REPLY, and OP_UPDATE, which are deprecated or unsupported. - [Natural Language to MongoDB Queries](https://www.mongodb.com/docs/manual/natural-language-to-mongodb.md): Use a large language model (LLM) to generate MongoDB queries from natural language. Learn prompting best practices, model selection, and prompt templates for MQL. - [MongoDB Query API](https://www.mongodb.com/docs/manual/query-api.md): Explore data using MongoDB's Query API, which supports CRUD operations, aggregation pipelines, and various query types like geospatial and full-text search.