Recently TSG worked with an R&D client to migrate content from two legacy OpenText repositories into a new Alfresco environment using OpenMigrate. This post will discuss the process used to perform the OpenText to Alfresco migration, as well as some of the technical challenges that were encountered along the way.
Careful planning is required for any migration. See our previous post – Document Migrations – What you need to know – for more information on what to consider when planning for a migration.
OpenText to Alfresco Migration Strategy
This particular client had content stored in two different OpenText systems. The first system is Livelink, a legacy OpenText product which had been in place at the client for over 10 years. Plagued by browser compatibility issues and an aging infrastructure, the client was anxious to get a fresh start with Alfresco. Their Livelink instance contained 1.5 million objects (roughly 2TB) to be migrated.
The second OpenText system was an even older instance of BASIS Database. Similar to Livelink, this system was hosted on aging hardware and with limited client support. Nearly 100,000 documents needed to be migrated from BASIS to Alfresco.
To minimize the impact on the legacy systems, the client preferred a two-step migration strategy that used existing OpenText utilities to export metadata and content to a file system. The Livelink export process exported metadata in XML format, and the BASIS export process exported into a tagged plain text format. Following the export, OpenMigrate was used to read and map the exported content into Alfresco using OpenMigrate’s CMIS connector for Alfresco.
There were several technical challenges that came up during this project that are worth noting. The first was that OpenMigrate had never been used to migrate content from these OpenText exports before. The development team created new source connectors for OpenMigrate to parse the specially formatted metadata exports from both Livelink and BASIS. By leveraging OpenMigrate’s configurable mapping capability, the new connectors were combined with existing connectors to transform the metadata, read content from a file system, and upload content into Alfresco to meet the client’s needs.
Another challenge of the OpenText migration was the need to preserve folder and document permissions from the source OpenText systems migrate the permissions into the target Alfresco system. At a high level, permissions work similarly in both systems. An access control list (ACL) is applied to every object (file or folder) that grants users or groups access to the objects. At a more granular level, there are a number of key differences in the way that each system handles access permissions that proved to be challenging. Using OpenMigrate’s mapping layer, OpenText permissions were translated into Alfresco permissions, allowing for the same security to be applied to content in the new system.
After developing the source connectors for OpenText Livelink and BASIS exports, the process for executing the migration was straightforward and similar to other migrations we’ve run using OpenMigrate. One big advantage for the client was the ability to migrate one department or groups documents at a time. Per department/group we would:
- Suspend all content updates in the source OpenText system (viewing/downloading content was still allowed)
- Use OpenText export utility to export metadata and content from OpenText to the file system
- Use OpenMigrate to create the folder structure in the OpenText export in Alfresco, including any folder metadata and permissions
- Use OpenMigrate to upload all documents in the OpenText export in Alfresco, including metadata, permissions, and versions
- Use OpenMigrate log output to verify that all objects were migrated successfully and resolve any errors
- Allow users to access the migrated content in the new Alfresco system
As is the case for most ECM migrations, the success of this project was largely attributed to careful planning. We’re excited to now have source connectors for OpenText Livelink and BASIS available in the OpenMigrate tool belt.
Please feel free to comment below.