RavenDB 3.0 Feature: Server to Server Smuggling

time to read 2 min | 249 words

There are 6 major features for RavenDB 3.0 that we want to keep as surprises. One of them you've already learned about, the HTML5 studio. And we'll reveal the others as they become viable to show.

But leaving those major features aside, there is a lot of stuff that we are doing that would deserve a bullet point all on its own. And today I want to talk about one of those features, S2S Smuggling.

Basically, assume that you have a server at location P (for Production) and you want to get the state of this server to your database at location D (for development). Right now, you have to export the P database, copy the file to your own machine and import it. That isn't a major hassle, but it is a hassle.

Instead, in RavenDB 3.0, you can go to a server, point it to another server and just see the data streaming by. We even suppose doing this multiple times, and only the changes will be moved between the servers.

Yes, you can do that right now with the replication bundle. But not all databases are replicated, and it is simpler and easier to just move the documents as if there is nothing there. 

The general idea is to be more convenient, but it is also likely to be much faster than the current method of: server > file, copy file, file > server. If only because we can do two way streaming, and plug the outgoing data directly into a bulk insert pipe.