Thursday, August 18, 2011

Preliminary Google Calendar Upload Speed Tests

We've made no secret about the molasses-in-Antarctica upload speed of EWS in Office365 and Live@ Edu

So for an interesting comparison -- how long does it take to upload calendar data into Google Calendar?

In a test derived from real world data set (legacy Meeting Maker being the organ donor in this case)  our current technology uploaded 13,651 appointments to Google Calendar in 9:12 (i.e., 9 minutes and 12 seconds).  Just in case I happened to hit a low time for network traffic I ran the test again with additional loads on my PC and got all data inserted in 15:54 (call it 16 minutes).

Using the more conservative figure, this represents an average upload rate of about 853 calendar objects per minute into Google Calendar!  The faster result gives 1480 objects per minute, but I doubt that is sustainable over the duration of a migration.

For those of you who do not understand why we get excited by these numbers: this is similar to the peak throughput we see inserting into an on-premises Exchange installation (you always hear us use the figure 850 calendar objects per minute for estimation purposes).  Our timings on hosted Exchange come in at about 120 calendar objects per minute.

So Google Calendar is about ten times faster than an upload into Hosted Exchange!

Let me repeat that -- our early testing indicates that calendar uploads into Google Calendar execute an order of magnitude faster than an upload into hosted Exchange.

Now, let me point our a few things to beware of: these numbers may vary as our code evolves, but are in accord with the field experience of one of our test sites (which motivated this timing).

I have no idea what Google does right that Microsoft does not, given that both companies are in total control of their data centers, server code, and APIs.  I do know that for purposes of migration speed Google Calendar kicks Exchange calendar's buttocks all the way to the curb and then slam dances its corpse into pavement pizza.

Since regular readers will know that your author does not believe in letting ANY of the guilty off without some sentence, I want to point out that as mediocre as Microsoft EWS documentation and support has been, it is light years ahead of Google's documentation of their calendar APIs which our team has taken to completely ignoring because it's led us down too many bad paths already. 

And after inserting 40,000+ objects into Google Calendar, the Delete under Settings does not seem to work:

1 comment:

zyg said...

Some more info. In four consecutive runs not deleting the inserted data the times were 9:12, 15:54, 21:21, and 26:08. Notice the near-linear progression? This is normally an indication that insertion time is a function of the amount of data already in the calendar.