Recently I switched jobs and joined a small innovate company. One of my first assignments inspired me to write this blog article.
I was asked to write a report for a client, on measures that could be taken to guarantee continuity with regard to the use of CRM in case of a long term internet outage. The client wanted to be able to continue working with the CRM data no matter what.
One of the fallback scenarios that popped up in my head was a readonly CRM on-premise environment could act as a fallback environment.
Using Scribe technology we can provision the on-premise environment daily with fresh data. In that case the client is able to access the data he needs, and is able to alter the data a later point of time (once the connection has been restored).
Simple but elegant and can be done within a reasonable budget.
However this case keeps running through my head, bringing out the little hacker in me… is it somehow possible to set up an hybrid environment in which two CRM organizations replicate data to each other?
In which the online environment is going to act as the master and the on-premise environment acts as a slave. The changes made on the on-premise enivornment should be replicated back to the master, without causing a replication storm…
For me interesting enough to start a new series of blog articles in order to find a solution to tackle this problem. In this series of articles I’ll describe the steps I need to take in order to create bidirectional replication between entities. I need to think on:
- how to keep track of changes (insert, update, delete),
- how to avoid a replication storm,
- how to deal with unreliable connections,
- how to deal with differences in entity schemes
- maintainablity, a.k.a. how can I implement it with as less maintenance required as possible
In this series of articles, it is not my intention to create an enterprise grade solution. I consider this series as a small research project in which I want to master the mechanics behind replication, in order to be able to advise my clients as good as possible.
In the next article I’ll dive into some more theory describing the mechanics of replication. But first things first, I need to get my new gear up and running and setup a new virtual machine from which I’ll be working.