Migration pains
The Google Apps Sync tool for Microsoft Outlook creates a new Outlook profile so that you can keep any other accounts separate from your Google Apps account (Exchange promotes this type of profile use as well). This tool is what eventually keeps your mail, contacts and calendar synchronized between Outlook and the cloud.
The sync tool also provides the ability to import your existing Microsoft Exchange mailbox to your Google Apps account, I naively accepted Google Apps Sync’s offer to do this and let it get to work. The tool successfully migrated my calendar and contacts to their counterparts in the cloud, it created labels replicating my folder structure in Exchange and started uploading my mail messages to the cloud (while showing them in Outlook as it worked).
I started going through the messages and noticed that my name was missing in the To and From fields of my messages, depending on who the sender and recipient was. This was unacceptable and I thought I might have been doing something wrong or that there was a bug with the tool. It turns out that there is a bug with the tool (Outlook/Exchange may be to blame, who knows) where the aforementioned fields were not preserved for any messages in your mailbox if the sender or recipient was a member of your Exchange organization. I can only guess that this is because Exchange/Outlook strip out this information and replaces it with the unique contact information from the GAL. Either way, this was unacceptable and I quickly aborted the synchronization process, cleaned up that newly created profile and all messages from the Google Mail account and started searching for an alternative way to import (namely, IMAP) since I read that this was one of the methods for importing mail that preserved this information (as well as time/date information for messages).
The Google Apps Advanced tools section of the dashboard provides a section where you can provide account details for one (or many) users, a root folder to start importing from in the mailbox and a list of folders to exclude (for example: /Contacts, /Calendar, /Sync Issues) from the migration. The migration tool will then log into your mailbox through IMAP and download all the messages in the folders found under the root folder specified. When specifying a root folder using / as the root folder is usually enough (however, if you use / as the root, you will want to exclude /Contacts and /Calendar because the tool will import these items as mail), but for example if you wanted to migrate only messages found in the Inbox and its subfolders you could specify /Inbox as the root folder and specify any folder exclusions in a relative path to the root folder that you don’t want synchronized, like /Do not bring along if this folder is a subfolder of the Inbox.
Now, as long as your server is configured for IMAP and you have provided the settings (root folder and exclusions, among other options that are pretty self explanatory) you can kick off the migration tool and it will log into the server and download the messages as per your specifications. This process can reportedly be slow but since my mailbox wasn’t huge and it was only working on my mailbox, I left it for a few hours and when I sat back down the process had completed.
The results of the migration were impressive, the mailbox was almost completely there: the sender/recipient names, message times and dates were all correct (save for a few probably malformed messages that may have been sent from the future). I found that the only messages that were not migrated were messages with attachments that Google Mail does not support (such as executable attachments and zipped executables, etc), or attachments which had a size (including attachments) >25MB. Here is an overview of the IMAP migration process. The messages that were not migrated messages were very simple to filter and once I confirmed that I didn’t need them (since I would have the backup PST of my mailbox as it was on the Exchange server to reference these messages if I ever needed them anyway) I deleted those messages as well as the messages with invalid date information since I didn’t want them to sit out of order.
Finally, the tool created a label for each folder in my folder structure and tagged each message it found with its corresponding label (thus maintaining my folder structure to be displayed by Outlook and other clients that treated labels as folders such as the iPhone’s Mail.app). Another nice touch is that every imported message was labeled with the “Migrated” label so that you could easily differentiate messages that arrived while the migration was taking place and messages coming in from the Exchange migration.
Additional considerations
While in the end I achieved the results I was looking for, I feel that I had to unnecessarily jump through hoops to properly get my messages into my Google Mail account. The fact that I had to use the IMAP migration tool was also inconvenient since one of the features on the Google Apps Sync tool is that it facilitated client-side migrations to Google Mail. While the IMAP tool is infinitely useful for large migrations, small shops might prefer to do client-side migrations, not to mention it is the easier approach. The Google Apps Sync tool should have been able to query the GAL (if available) and fill in the information missing from the messages before sending them upstream to Google’s servers.
It should also be noted that if you have more than three or four nested folders in your mailbox unless the names of the folders are very short you will likely exceed Gmail’s 40 character label limit. The migration tool I assume has a special pass to bypass this limit for the sake of maintaining the original folder structure intact, however don’t expect that you will be able to edit this label (or create labels to nest deeper) from the Gmail interface. I didn’t test if you could create nested folders using Outlook (and have the Sync Apps tool create the labels for you automatically online) instead I just opted to modify my folder structure to better embrace the label system, having labels for nested folders instead of the hierarchy except where it was absolutely necessary. This helped me stay below the limit and so far I can’t complain.
My next post will look into some of the challenges of using Outlook with the Google Mail way of doing things.
Post a Comment