Earlier today, Todd Klindt and I had a brief twitter chat. Basically, he ran into some problems with a site that had been run through the wringer with Import/Export. Todd asked a really good question for which the answer requires a little more space than twitter allows. 🙂
For those that are relatively new to SharePoint, they don’t often times don’t get a chance to learn what works or what needs to be avoided until it’s too late. Let’s take a brief look at the history of this feature set so that if you’re new to SharePoint, you’ll know where some issues may pop up.
Import/Export is one of those features that needs to be used with caution. Why? Well, we have to go back to RTM of 2007 when the world was first introduced to Import/Export (aka PRIME). It was a very broken toolset. Fast forward a year or so, then the Infrastructure Updates for 2007 was released. This was a special set of fixes designed to repair the underlying Import/Export engine. The IU made the feature set much more usable; however, there were a core set of things Import/Export still could not do. To the average SharePoint administrator, this basically means Import/Export is NOT a full fidelity solution for backing up and moving data. Again fast forward to 2010 RTM. Import/export is still pretty much unchanged.
At the site (aka web) level, Import/Export is without a doubt a very problematic feature. Import/export does not offer full fidelity data export. Thus, at the site level, you’re somewhat gambling with your data. Sometimes it will work and other times it may not. There are a lot of threads all over the place that help us see that Import/Export-ed sites tends to have weird and random behaviors. As an administrator, the last thing I want to do is chase down problems with restored data.
Is Import/Export really that unreliable? The answer is generally yes. However, we definitely need to give Import/Export some credit.
At the list and item level, Import/Export can actually go the full cycle.
The more granular you are (i.e. items), the easier it is for Import/Export to actually work as we expect it to. Using Import/Export to move items is what is known as “cherry picking”. It works and that leads us to the one of the possible options to Todd’s question…
“What (are the) other options for breaking up a site collection?”
Generally speaking you need to migrate your data. You’ll either need to …
- explore using Import/Export at the item level or
- work with a custom solution (written in C# or PowerShell) that extracts the data locally and pushes it to a new destination.
Migration is not nearly as simple as just clicking on the Central Admin ui to export a site, then repositioning it. However, it’s the only way you be assured that all the data you care about is where it needs to be and that your site is fully functional.
Should you build or buy the tools to migrate your data? It depends on your needs, skills, and timeframes. There are lot of good tools – from free to pay. PowerShell and custom code are definitely viable options.
Migration does take a little more planning but it inevitably makes for a much nicer end result. It’s a great way to reduce clutter (e.g. no need to migrate stuff that doesn’t matter!) and you can rest easier when the process is done. It’s worth calling out that with any migration plan, though, you should incorporate a testing strategy. Testing will validate that your migration technique will successfully meet your requirements.