MongoDB
Overview
MongoDB is a popular NoSQL database program that uses JSON-like documents with optional schemas. SaddleData supports MongoDB as both a source and a destination, allowing you to move data in and out of your document collections seamlessly.
Prerequisites
Before connecting to MongoDB, please ensure you have the following:
- A dedicated user for your database with appropriate permissions (read for source, write for destination).
- Network access allowed for SaddleData's IP addresses if you are using the Cloud service, or connectivity from your Worker if using the Remote Agent.
Configuration
When creating a MongoDB Integration, you will need to provide the following information:
- Connection URI: The standard MongoDB connection string (e.g.,
mongodb+srv://user:[email protected]/...). - Database Name: The name of the database you want to access.
Supported Capabilities
MongoDB as a Source
- Discovery: Automatically discovers collections in the specified database.
- Schema Inference: Infers the schema (columns and types) by sampling documents from the collection.
- Sync Modes:
- Full Refresh: Reads all documents from the collection.
- Incremental: Reads new documents based on a cursor field (e.g.,
_idor a timestamp field).
MongoDB as a Destination
- Writing: Writes records as documents into the specified collection.
- Sync Modes:
- Full Refresh - Overwrite: Replaces the collection with new data.
- Incremental - Append: Inserts new documents.
- Incremental - Deduped (Upsert): Updates existing documents based on the
_idfield or a specified primary key.
Schema Evolution
SaddleData detects schema changes in your MongoDB collections. New fields found in documents can be automatically added to the downstream schema definition, and mapped to destination columns.
Declarative Configuration
apiVersion: v1
kind: Connection
metadata:
name: mongodb-connection
spec:
connectorId: mongodb
configuration:
uri: mongodb+srv://...
database: my_database
capability: both