7

I need to migrate the data from old non structured sitecore system into new helix based information architecture.

So this is not exactly "as is as"migration of content tree. We need to create new helix based information architecture and map the old content according and will import into the new system..

In the existing system there are lots of unused and non structured content.

So the whole idea of this migration is to import the existing data into new structured based information architecture.

Any suggestions, past experience for the same work, challenges, advice,is any tool available in the marketplace?

3

I am not aware of such tool or easy path to make this happen. Honestly this looks like a project of it's own. The experience I had with it similar to your scenario, it turned out we had to rewrite the project following Helix as opposed of trying to use the existing solution. If there is an easy way to do that I am not aware of.

  • Yes, May be Powershell script would be good tool here, i also didn't find anything ready-made on the marketplace. – Ashish Bansal Mar 20 '17 at 13:36
2

You might want to try and look into Hedgehog's Razl tool. You can find it at this link http://www.teamdevelopmentforsitecore.com/Razl. Other than that you might have to write a custom data import task to do it. I have had to do this when going from a non-Sitecore system to a Sitecore system. Also you might need the task to run more than once since the users could be updating the current site.

1

There is the Sitecore Data Exchange Framework which allows you to import data from a source to a Sitecore Instance. Though, since you want to change the structure of the content tree where some items will be deleted and so on, I can see 3 options:

Option 1

Implementation of a custom tool which takes as input the old Sitecore instance and create the new items in the new Sitecore Helix based instance.

enter image description here

You will create a mapper that will map the item from the old instance to the new one. Items that are not required are neglected.

Option 2

By making use of SQL to directly creating / updating the items from the Sitecore databases. But this is very risky as you will need to first understand how the databases are structured and used.

Option 3

Making use of Sitecore Packages. You can generate a Sitecore Package from the old instance, then modifies the project file and different paths found in the package. But this may be very difficult since the packages contains Sitecore ID as path also

Conclusion

I will opt for option 1 because you will have more control on what you are doing. Also, it seems much easier to to implement the tool as you will already know which items are required and where you want it to be placed. Razl is not free and I am not sure whether it will help since it will allows you to compare databases but you will not be able to transfer an item to different location in the content tree.

1

You may also use :

  1. Enable Sitecore Client Service or Sitecore Web Item API in your new Helix instance

  2. Install Sitecore powershell extension in your old sitecore instance.

  3. Start creating item & manage content in Helix based instance by executing powershell script(in old instance) + enabling Sitecore Client Service or Sitecore Web Item API (in new instance).

*P.S: if you have more knowledge in Powershell script, you can use this approach else, you can create an C# based API to do the same.

i have tried similar data migration using powershell extension :)

0

You can create a tool to export your Sitecore items into csv or xml and then use https://marketplace.sitecore.net/en/Modules/Data_Importer.aspx to import it to another instance. You may have to customize the module.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.