8.5.1 DAOS in the Replicator benchmarks, a slight disappointment
Darren Duke August 30 2009 09:55:15 PM
With everyone and their dog blogging about XPages in 8.5.1 (and rightly so), I figured I'd go the "path less traveled". Domino 8.5.1 adds DAOS to the replicator task. In essence, this little piece of wondrous engineering should dramatically decrease bandwidth used during replication between DAOS enabled servers.It does this by the allowing the two servers taking part in replication to communicate that a given NLO attachment either already exists in the target server DAOS repository or that it does not. If the NLO already exists in the target server DAOS repository, then that attachment is not sent. This means only "net new" attachments (ones where no NLO exist) are sent to a target server during replication. As many users and mail files have the same attachments (which is why we see such amazing savings on disk storage on DAOS) the same many, many copies of the same attachments now only ever replicate once between two discreet servers.
Think of it this way:
Source server : I am about to send you DAOS attachment abc.nlo (size 2.4MB)
Target server : I don't have this, send it over
Source server : Sending 2.4MB
Or
Source server : I am about to send you DAOS attachment abc.nlo (size 2.4MB)
Target server : I already have this NLO file. Do not send
Source server : Not sending 2.4MB
With one simple example you can see how powerful this will be once you scale it to entire Domino servers. As the attachment count goes up, and reply to all with history is hit, the bandwidth savings can be phenomenal. "Enough talk", you say, "show me the money".
Disclaimer : as 8.5.1 is only in beta right now, these results could significantly change (or IBM could change functionality) in the production release of ND 8.5.1.
Figure 1. Bandwidth used without DAOS enabled during replication
In figure 1, we move 9.2GB of mail and archive files as new replica's via AdminP to a new server. Without DAOS enabled we see a total of 9.33GB of bandwidth used.
So what happens when we enable DAOS?
Figure 2. Bandwidth used with DAOS enabled during replication
In figure 2, we see no difference? Really? WTF? I was expecting to see a 40-60% percent decrease.
Note, the extra GB or so is just normal replication after the initial build took place, so no, it really isn't larger.
This result threw me for a loop until I thought through the process. See, to get the mail files over to the server, we used AdminP and created replica stubs on the the new target server. Then replication took place. My guess here is that DAOS only works once the replicas have been fully initialized. This seems to be proved by figure 3 which shows a handful (in this case 38) attachments we "optimized". These were in fact "optimized" after the replicas were initialized. I was expecting so see 15,000+ as the number here. Bummer. Maybe in 8.5.2 :)
Figure 3. DAOS "optimized" attachment count.
Bottom line, DAOS in the replicator works the way I described it above (2.5MB example), just the replicas have to be fully initialized and created first. The way I "thought" it should work, with replica stubs would be very useful too.
- Comments [20]




