RavenDB 4.1 FeaturesMongoDB & CosmosDB Migration Wizards

time to read 2 min | 345 words

After we built the SQL Migration Wizard for RavenDB 4.1, we started to field questions about assistance in migrating from more databases. As a result of this, we have introduced a support for MongoDB and CosmosDB migration.

I’m going to walk you through how this works. First, you’ll need to download the Release Candidate of RavenDB 4.1. In addition to the zip package, you’ll need to download the Tools zip file as well.

Next, run RavenDB and create a new database, then go to Settings > Import Data and select From other. Here is what this will look like:

image

I went to shodan.io and found a publicly available MongoDB server to test this out. The process completed successfully and gave me a single document:

image

I guess someone already got to this instance.

More seriously, I scanned literally the first page in this listing and was able to connect and retrieve real documents from a few of them. That included what looked like users (hashed) passwords, among other details. I deleted the data

At any rate, you can use this wizard to pull data from a MongoDB instance to your RavenDB database. RavenDB will handle all the details of the transfer for you. There is even the option to use a transformation script to shape the data as it goes into RavenDB.

You can do the same for CosmosDB, as you can see below:

image

These credentials I got from doing a GitHub search.

On the one hand, I’m really happy that the feature works. On the other hand, I’m pretty much in a state of despair from the state of security in general.

We are looking into other databases that our users want to migrate from. If you have such a need, please let us know.

More posts in "RavenDB 4.1 Features" series:

  1. (22 Aug 2018) MongoDB & CosmosDB Migration Wizards
  2. (04 Jul 2018) This document is included in your subscription
  3. (03 Jul 2018) Detailed query timing details
  4. (02 Jul 2018) Of course I know ya, dude
  5. (29 Jun 2018) Running RavenDB embedded
  6. (26 Jun 2018) Can you explain that choice?
  7. (20 Jun 2018) Cluster wide ACID transactions
  8. (19 Jun 2018) Explain that choice
  9. (22 May 2018) Highlighting
  10. (11 May 2018) Counting my counters
  11. (10 May 2018) JavaScript Indexes
  12. (04 May 2018) SQL Migration Wizard