# Go Driver - (current) > Learn how to install and use the MongoDB Go Driver to connect to MongoDB, perform CRUD operations, and work with and secure your data in your Go applications. - [Aggregation](https://www.mongodb.com/docs/drivers/go/current/aggregation.md): Explore how to use aggregation operations in the MongoDB Go Driver, including examples of grouping, sorting, and filtering data in collections. - [Run a MongoDB Search Query](https://www.mongodb.com/docs/drivers/go/current/atlas-search.md): Learn how to use the MongoDB Go Driver to run MongoDB Search queries in an aggregation pipeline to perform full-text searches on collections hosted on Atlas. - [Run a MongoDB Vector Search Query](https://www.mongodb.com/docs/drivers/go/current/atlas-vector-search.md) - [Customize Cluster Settings](https://www.mongodb.com/docs/drivers/go/current/connect/connection-options/cluster-settings.md): Customize cluster settings for the MongoDB Go Driver, including server selection timeout, load balancing, and adaptive overload retargeting options. - [Connection Pools](https://www.mongodb.com/docs/drivers/go/current/connect/connection-options/connection-pools.md) - [Limit Server Execution Time](https://www.mongodb.com/docs/drivers/go/current/connect/connection-options/csot.md) - [Compress Network Traffic](https://www.mongodb.com/docs/drivers/go/current/connect/connection-options/network-compression.md): Learn how to enable network compression in the MongoDB Go Driver for MongoDB using Snappy, Zlib, or Zstandard algorithms to reduce data transfer. - [Stable API](https://www.mongodb.com/docs/drivers/go/current/connect/connection-options/stable-api.md): Learn how to specify Stable API compatibility in the MongoDB Go Driver to ensure operations align with a defined API version. - [Choose a Connection Target](https://www.mongodb.com/docs/drivers/go/current/connect/connection-targets.md) - [Connection Troubleshooting](https://www.mongodb.com/docs/drivers/go/current/connect/connection-troubleshooting.md): Troubleshoot connection issues with the MongoDB Go Driver by verifying connection strings, authentication mechanisms, and firewall settings. - [Tutorial: Connect to MongoDB from AWS Lambda](https://www.mongodb.com/docs/drivers/go/current/connect/go-lambda.md): Learn how to create an AWS Lambda function using Go that connects to and queries MongoDB Atlas. - [Create a MongoClient](https://www.mongodb.com/docs/drivers/go/current/connect/mongoclient.md) - [Specify Connection Options](https://www.mongodb.com/docs/drivers/go/current/connect/specify-connection-options.md): Learn how to specify connection options for the MongoDB Go Driver by using a connection string or ClientOptions struct, including TLS, timeout, and pool settings. - [Context Package](https://www.mongodb.com/docs/drivers/go/current/context.md): Learn how to use the context package in Go to manage timeouts and cancellations for blocking method calls in the MongoDB Go driver. - [Bulk Operations](https://www.mongodb.com/docs/drivers/go/current/crud/bulk.md): Learn to perform bulk write operations with the MongoDB Go Driver, including inserts, updates, replacements, and deletions, using the bulkWrite() method. - [Compound Operations](https://www.mongodb.com/docs/drivers/go/current/crud/compound-operations.md): Learn how to perform compound operations in MongoDB using Go, combining read and write actions into a single atomic operation to prevent data alteration. - [Configure CRUD Operations](https://www.mongodb.com/docs/drivers/go/current/crud/configure.md): Configure MongoDB Go Driver CRUD operations with read and write concerns, read preferences, retryable reads and writes, collation, and hint options in Go. - [Delete Documents](https://www.mongodb.com/docs/drivers/go/current/crud/delete.md): Learn how to remove documents from collections with the DeleteOne() and DeleteMany() methods in the MongoDB Go Driver, with examples and options. - [GridFS](https://www.mongodb.com/docs/drivers/go/current/crud/gridfs.md): Learn how to efficiently store and retrieve large files in the MongoDB Go Driver using GridFS, which splits files into chunks and manages them in a bucket. - [Insert Documents](https://www.mongodb.com/docs/drivers/go/current/crud/insert.md): Learn how to insert documents into a MongoDB collection using the InsertOne() and InsertMany() methods, with options to modify their behavior. - [Count Documents](https://www.mongodb.com/docs/drivers/go/current/crud/query/count.md): Learn to count documents in a MongoDB collection using Go, including accurate, estimated, and aggregation-based methods. - [Access Data From a Cursor](https://www.mongodb.com/docs/drivers/go/current/crud/query/cursor.md): Learn to access data using a cursor with the Go driver, including retrieving documents individually or in batches, and closing the cursor to free resources. - [Retrieve Distinct Values](https://www.mongodb.com/docs/drivers/go/current/crud/query/distinct.md): Learn how to retrieve distinct values for a specified field in a collection using the Distinct() method in Go. - [Specify Which Fields to Return](https://www.mongodb.com/docs/drivers/go/current/crud/query/project.md): Learn how to specify which fields to return in MongoDB documents using projections in Go, including examples for including or excluding fields. - [Specify a Query](https://www.mongodb.com/docs/drivers/go/current/crud/query/query-document.md): Learn how to specify queries in Go to match subsets of documents using filters, operators, and various criteria. - [Find Documents](https://www.mongodb.com/docs/drivers/go/current/crud/query/retrieve.md): Learn how to retrieve data by using MongoDB Go Driver read operations, including find and aggregation methods. - [Specify Documents to Return](https://www.mongodb.com/docs/drivers/go/current/crud/query/specify-return-documents.md) - [Perform a Text Query](https://www.mongodb.com/docs/drivers/go/current/crud/query/text.md): Learn how to perform text queries with the MongoDB Go Driver, including creating text indexes and sorting results by relevance. - [Transactions](https://www.mongodb.com/docs/drivers/go/current/crud/transactions.md): Learn to perform transactions using the MongoDB Go Driver, including creating sessions, starting transactions, and committing multi-document operations. - [Tutorial: Build a Web Application with the Go driver and Gin](https://www.mongodb.com/docs/drivers/go/current/crud/tutorial-web-application.md): Learn how to build a web application using the MongoDB Go Driver and the Gin web framework, including setting up routes and handling requests. - [Update Documents](https://www.mongodb.com/docs/drivers/go/current/crud/update.md): Learn how to modify MongoDB documents using update and replace operations, including methods like updateOne(), updateMany(), and replaceOne(). - [Update Arrays in a Document](https://www.mongodb.com/docs/drivers/go/current/crud/update/embedded-arrays.md): Learn how to update array elements in documents using positional operators and the findOneAndUpdate() method in the MongoDB Go Driver. - [Replace Documents](https://www.mongodb.com/docs/drivers/go/current/crud/update/replace.md) - [Insert or Update in a Single Operation](https://www.mongodb.com/docs/drivers/go/current/crud/update/upsert.md): Learn how to perform an upsert in MongoDB using Go, which updates existing documents or inserts new ones if no match is found. - [Work with BSON](https://www.mongodb.com/docs/drivers/go/current/data-formats/bson.md): Learn how the MongoDB Go Driver handles BSON data conversion, including marshalling and unmarshalling, and how to use struct tags and BSON options. - [Document Data Format: Extended JSON](https://www.mongodb.com/docs/drivers/go/current/data-formats/extended-json.md) - [Work with Geospatial Data](https://www.mongodb.com/docs/drivers/go/current/data-formats/geo.md): Learn to work with geospatial data in the MongoDB Go Driver by using GeoJSON and legacy formats, create geospatial indexes, and perform queries. - [Use Struct Tags](https://www.mongodb.com/docs/drivers/go/current/data-formats/struct-tagging.md): Learn how to use struct tags in Go to control BSON field names when inserting documents with the MongoDB Go Driver. - [Databases and Collections](https://www.mongodb.com/docs/drivers/go/current/databases-collections.md): Learn how to manage MongoDB databases and collections using the Go driver, including accessing, creating, and deleting collections. - [Getting Started with Go](https://www.mongodb.com/docs/drivers/go/current/get-started.md): Learn how to create an app to connect to MongoDB deployment by using the Go driver. - [MongoDB Go Driver](https://www.mongodb.com/docs/drivers/go/current/index.md): Learn how to install and use the MongoDB Go Driver to connect to MongoDB, perform CRUD operations, and work with and secure your data in your Go applications. - [Indexes](https://www.mongodb.com/docs/drivers/go/current/indexes.md): Learn how to use indexes in the MongoDB Go Driver to improve query performance and support various operations like updates and deletes. - [Tutorial: Vector Search Integration with AWS Bedrock](https://www.mongodb.com/docs/drivers/go/current/integrations/vector-search-bedrock.md): Learn how to build a celebrity matching application backend using Go, MongoDB Vector Search, and AWS Bedrock AI models. - [Issues & Help](https://www.mongodb.com/docs/drivers/go/current/issues-and-help.md): Find support for the MongoDB Go Driver, report bugs or feature requests via JIRA, and create pull requests to contribute. - [Monitor Data with Change Streams](https://www.mongodb.com/docs/drivers/go/current/monitoring-and-logging/change-streams.md): Learn how to monitor document changes in MongoDB by using change streams, including opening streams and modifying output with pipelines and options. - [Logging](https://www.mongodb.com/docs/drivers/go/current/monitoring-and-logging/logging.md): Configure logging in your Go application using the MongoDB Go Driver to record events, set severity levels, and integrate custom or third-party loggers. - [Monitor Application Events](https://www.mongodb.com/docs/drivers/go/current/monitoring-and-logging/monitoring.md): Explore cluster, command, and connection pool monitoring in the MongoDB Go Driver. - [Quick Reference](https://www.mongodb.com/docs/drivers/go/current/reference/quick-reference.md): See simple code examples for how to perform a variety of operations in the Go driver. - [Release Notes](https://www.mongodb.com/docs/drivers/go/current/reference/release-notes.md): Discover the latest updates and features for each version of the MongoDB Go Driver, including bug fixes and breaking changes. - [Upgrade Driver Versions](https://www.mongodb.com/docs/drivers/go/current/reference/upgrade.md) - [Run a Database Command](https://www.mongodb.com/docs/drivers/go/current/run-command.md): Learn how to execute database commands using the MongoDB Go Driver, including methods for running commands and handling responses. - [Authentication Mechanisms](https://www.mongodb.com/docs/drivers/go/current/security/authentication.md): Authenticate using the MongoDB Go Driver with various supported authentication mechanisms. - [AWS IAM Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/aws-iam.md) - [Kerberos (GSSAPI) Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/kerberos.md) - [LDAP (PLAIN) Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/ldap.md) - [OIDC Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/oidc.md): Explore sample code for connecting to MongoDB using the enterprise authentication mechanism MONGODB-OIDC with the MongoDB Go Driver. - [SCRAM Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/scram.md) - [X.509 Authentication Mechanism](https://www.mongodb.com/docs/drivers/go/current/security/authentication/x509.md) - [Enable TLS on a Connection](https://www.mongodb.com/docs/drivers/go/current/security/tls.md): Learn how to secure your MongoDB connection by using TLS in your Go application. - [Time Series Collections](https://www.mongodb.com/docs/drivers/go/current/time-series.md): Learn how to create and query time series collections using the MongoDB Go Driver, including setting up time fields and checking collection creation.