What are the option for asset migration between AEM instances?
There are cases where we need to move assets across AEM instances. This may occur when we have multiple asset repositories and as part of merging assets we may have to move them into one single instance. While moving assets we have to consider various factors like asset metadata, asset versions, Tags w.r.t assets all moved and validated.
The overall size of asset is another consideration while selecting any tools to migrate assets. Below given few tools which can be included in our consideration while we go for asset migration.
By configuring replication agent, we can migrate assets across AEM Instances
-Vault Remote Copy
Jackrabbit vault offers a simple method to copy nodes between repositories.
This can be used for bulk assets.
License: Jackrabbit Oak and any of its parts are licensed according to the terms listed in the Apache License, Version 2.0
For smaller content parts (up top a few GB) content transfers may also be done using CRX packages. However, that's usually not the optimal way for large amounts of assets.
If your AEM topology is running at Adobe Managed Services (AMS), your CSE can assist as well. AMS has automated ways for content synchronization available.
There is no one-size-fits-all solution. The right methodology and tool has to be selected based on the specific use case.
There are some important points to be considered when transferring assets between instances:
If you have custom metadata namespaces, make sure that these are transferred as well. Trying to import assets that have metadata with custom namespaces may fail if the namespace is not available on the target instance depending on the methodology used.
Are transferring only original assets or does your transfer already include required renditions? If renditions are already included, make sure to deactivate the workflow launchers for the DAM Update Asset workflow to avoid costly re-generation of renditions.
Are you using Dynamic Media? If yes, there are instance-specific details in the metadata of your assets that point to the Dynamic Media instance connected to the source instance. Make sure to handle that case properly and (re-) synchronize your assets with/to Dynamic Media on the target instance.