11(integrations-mongo-cdc)=
2- # MongoDB CDC (Preview)
2+ # MongoDB CDC
33
44CrateDB Cloud enables continuous data ingestion from MongoDB using Change Data
5- Capture (CDC), providing seamless, real-time synchronization of your data.
6-
7- :::{caution}
8- This integration is currently in preview and may have restricted availability.
9- For more information, please [ contact us] ( https://cratedb.com/contact ) .
10- :::
5+ Capture (CDC), providing real-time synchronization of your data.
116
127## Key Concepts
138
@@ -54,25 +49,28 @@ Supported authentication methods:
5449
5550The following steps should be performed in the MongoDB Atlas UI.
5651
57- #### Step 1: Create a Custom Role
52+ :::::{stepper}
53+ #### Create a Custom Role
58541 . ** Navigate to Database Access**
5955 Go to ** Database Access** in the MongoDB Atlas UI for the cluster you want to
6056 connect to CrateDB Cloud.
6157
62582 . ** Add a Custom Role**
63- Under ** Custom Roles** , click ** Add New Custom Role** .
59+ Under ** Custom Roles** , click ** Add New Custom Role** . A form will appear.
6460
65- 3 . ** Set Up Read-Only Access**
61+ 3 . Fill in the Custom Role Name - For example, use CrateDB CDC integration.
62+
63+ 4 . ** Set Up Read-Only Access**
6664 Assign the following actions or roles to the custom role:
67- - ` find `
68- - ` changeStream `
69- - ` collStats `
65+ - ` find ` , to be found under Collection Actions/Query and Write Actions
66+ - ` changeStream ` , to be found under Collection Actions/Change Stream Actions
67+ - ` collStats ` , to be found under Collection Actions/Diagnostic Actions
7068
7169 Specify the databases and collections for these actions. You can update
7270 access permissions in the MongoDB Atlas UI later if needed.
7371
7472
75- #### Step 2: Create a User
73+ #### Create a User
7674
7775Depending on whether you plan to use SCRAM or X.509 authentication, create a
7876database user with one of the following methods:
@@ -113,7 +111,7 @@ database user with one of the following methods:
113111:::
114112
115113
116- #### Step 3: Configure IP Access
114+ #### Configure IP Access
117115
118116To allow CrateDB Cloud to access your MongoDB Atlas cluster, you must add the
119117CrateDB Cloud IP addresses to the IP Access List in MongoDB Atlas.
@@ -124,34 +122,15 @@ CrateDB Cloud IP addresses to the IP Access List in MongoDB Atlas.
1241222 . ** Add IP Address**
125123 Click ** Add IP Address** and choose an IP address or range to allow access.
126124 For testing purposes, you can select ** Allow Access from Anywhere** , but for
127- production, it is recommended to specify only the required IPs.
128-
129- :::{note}
130- The specific IP addresses depend on the region of your CrateDB Cloud cluster.
131- These IP addresses can also be found in the ** Connection Details** section of the
132- CrateDB Cloud Console, just before you click ** Test Connection** during the
133- setup process.
134-
135- ** Outbound IP Addresses** :
136-
137- | Cloud Provider | Region | IP Addresses |
138- | ----------------| ---------------| ---------------------------------|
139- | Azure | East US 2 | ` 52.184.241.228/32 ` , ` 52.254.31.90/32 ` |
140- | Azure | West Europe | ` 51.105.153.175/32 ` , ` 108.142.34.5/32 ` |
141- | AWS | EU West 1 | ` 34.255.75.224 ` |
142- | AWS | US East 1 | ` 54.197.229.58 ` |
143- | AWS | US West 2 | ` 54.189.16.20 ` |
144- | GCP | US Central 1 | ` 34.69.134.49 ` |
145-
146- :::
125+ production, it is recommended to specify only the required IPs. The form will show you the specific IP addresses you need to allow.
147126
148127:::{note}
149128To set up a PrivateLink connection for the Mongo CDC integration, please reach
150129out to our support team.
151130:::
152131
153132
154- #### Step 4: Access Connection String
133+ #### Access Connection String
155134
156135You'll need to provide the connection string for your MongoDB Atlas cluster so
157136that CrateDB Cloud can connect to it.
@@ -186,21 +165,21 @@ mongodb+srv:///?authMechanism=MONGODB-X509&retryWrites=true&w=majority
186165Make sure to upload the X.509 certificate file when configuring the connection
187166in CrateDB Cloud.
188167:::
189-
190-
168+ :::::
191169
192170### Set Up Integration in CrateDB Cloud
193171
194172Follow these steps in the CrateDB Cloud Console to set up the MongoDB CDC integration:
195173
196- #### Step 1: Create an Integration
174+ :::::{stepper}
175+ #### Create an Integration
1971761 . Navigate to the ** Import** section in the CrateDB Cloud Console.
1981772 . Click ** Create Integration** and select ** MongoDB** as the source type.
199178
200- #### Step 2: Configure Connection
179+ #### Configure Connection
2011801 . Choose ** Create New Connection** or select an existing one.
2021812 . Fill in the following details:
203- :::{tab} SCRAM Auhentication
182+ :::{tab} SCRAM Authentication
204183 - ** Connection Name** : Provide a unique name for the connection.
205184 - ** Connection String** : Paste the connection string from MongoDB Atlas.
206185 - ** Username** : Enter the database username (required for SCRAM).
@@ -214,15 +193,15 @@ Follow these steps in the CrateDB Cloud Console to set up the MongoDB CDC integr
214193 - ** Default Database** : Specify the default database to use for this connection.
215194 :::
216195
217- #### Step 3: Test the Connection
196+ #### Test the Connection
218197Click ** Test Connection** to verify CrateDB Cloud can connect to your MongoDB
219198Atlas cluster. Resolve any issues if the test fails.
220199
221- #### Step 4: Select Collection
200+ #### Select Collection
222201Enter the database and collection name from your MongoDB Atlas cluster, that you
223202want to sync with CrateDB Cloud.
224203
225- #### Step 5: Select Target Table
204+ #### Select Target Table
2262051 . Specify the target table in your CrateDB Cloud cluster where the data will be synced.
2272062 . MongoDB records will be inserted into an object column called ` document ` .
2282073 . Select the object type for the column:
@@ -234,32 +213,24 @@ want to sync with CrateDB Cloud.
234213 However, selecting ` dynamic ` provides faster query performance by utilizing indexes and columnar storage.
235214 :::
236215
237- #### Step 6: Configure Integration Settings
216+ #### Configure Integration Settings
2382171 . Enter a name for the integration.
2392182 . Select the integration mode:
240219 - ** Full Load Only** : Imports the data once but doesn’t sync changes.
241220 - ** Full Load and CDC** : Imports the data and syncs changes in real-time.
242221 - ** CDC Only** : Syncs only new changes in real-time without importing existing data.
243222
244- #### Step 7: Create the Integration
223+ #### Create the Integration
245224Click ** Create Integration** to finalize the setup. CrateDB Cloud will now sync
246225your MongoDB data based on the selected settings.
247-
226+ :::::
248227---
249228
250- ## Limitations
251-
252- The MongoDB CDC integration is available as a preview. The feature is stable
253- enough for broader use but may still have limitations, known issues, or
254- incomplete features. While suitable for many use cases, it is not yet
255- recommended for mission-critical workloads.
256-
257-
258229### Column Name Restrictions
259230
260- Column or property names containing square brackets ( ` [] ` ) are not supported and
261- are replaced with ` __openbrk__ ` and ` __closebrk__ ` respectively. Likewise, column
262- names containing dots ( ` . ` ) are not supported and are replaced with ( ` __dot__ ` ) .
231+ Column or property names containing square brackets ` [] ` are not supported and
232+ are replaced with ` _obkt_ ` and ` _cbkt_ ` respectively. Likewise, column
233+ names containing dots ` . ` are not supported and are replaced with ` _dot_ ` .
263234
264235:::{warning}
265236This behavior may change in future releases.
@@ -275,5 +246,4 @@ CDC integration:
275246 value.
276247- ** Binary data types** other than UUIDs, which are converted to ` TEXT ` and
277248 ** vectors** , which are converted to ` ARRAY ` s of numbers.
278- - The ` Decimal128 ` data type is not supported and is converted to a string, as
279- CrateDB does not support a decimal data type.
249+ - The ` Decimal128 ` data type is not supported and is converted to a string.
0 commit comments