SharePlex Optimistic Commit Explained

 So the other day, as I was using a taxi to get to the airport for a flight. I was watching all the traffic on the freeway and it got me thinking about SharePlex’s optimistic commit feature and a taxi are similar.  

How can SharePlex and a taxi have anything in common you ask? Well they are both responsible for moving something from one point to another with as little latency or delay as possible.

Optimistic commit is one of the features that comes as a part of SharePlex that helps dramatically cut down latency between the source and target. This is accomplished by moving the data from the source to the target as soon as it is seen in the redo logs. We base this philosophy on the premise that if you are inserting data into a production database you will most likely commit it. We don’t wait for the commit to happen in your source database before moving the data to the target. We have a constant small stream of changed data going across your network so that the data is actually on, and in most cases, inserted into your target. You just won’t be able to see it until the commit comes through. The advantage of this is that you don’t have to worry about waiting until logs or extract files or any other method that is out there to either switch or are created on your source database before the data gets moved. This also helps alleviate network bandwidth since you are not blasting large archive logs or files through your network at once. Optimistic commit also helps prevent the loss of transactions if there is a failure somewhere in your data replication. Since the transactions are happening as they are seen in the redo logs and shipped across to the target, if something happens let’s say to your network, the data is already there. If you were shipping archive logs or other files and something happens to that log or file you would lose every transaction that’s in it.

So what does a taxi have to do with this. Well, think of a taxi as SharePlex’s optimistic commit. You have all these little taxi cars all lined up waiting to take you to your target destination. You jump in and off you go, next guy jumps in, then the next one, and so on. No waiting for a bus to show up, load up a bunch of other people, and then take you to your destination (like a created extract file or archive log). What happens if the bus breaks down? Everyone has to go back and start over or worse they wander off and get lost. If an a taxi breaks down on the guy behind you, only that one guy has to start over, everyone else just keeps moving on.

Let’s expand on our example for all you amusement park lovers. Smart You and a hundred of your friends are all taking taxi’s to the amusement park. All of your friends get there and are standing at the entrance, they are just waiting for you (the commit) to show up with the tickets. You give them their tickets and everyone is off to go ride the “DROP OF DEATH” roller coaster. Now at the same time your neighbor, who is not as smart as you, plans the same trip, but they rent a bus. So now everyone has to wait for the bus to show up…..wait for everyone one by one to get into the bus…..blast through the highway (network) slowing everyone down due to its size……then wait for everyone to get out of the bus and to the entrance…..and then wait for your neighbor to give out the tickets (the commit) before they can get in. Or worse, what happens if the bus breaks down? No one gets to go and ride on the “DROP OF DEATH” and everyone’s day will be ruined.

So to sum it all up, when you need data replication think about SharePlex and its optimistic commit ability and how nice it is to ride in a taxi and not cram into a bus.

For more information, visit our SharePlex product page.

Anonymous