SAP Analytics Cloud contains a robust method by which content can be transferred among systems. Historically, content could only be transferred using a local file system on export. The same file would then be used to import into the destination system. The SAP Analytics Cloud promotion management procedure has been updated to include a cloud-based transport system called the content network, which provides a secure, repeatable and shareable procedure for transporting content to other SAP Analytic Cloud systems. Effective project management can be daunting, so this post outlines best practices when defining promotion management governance procedures in order to have the best customer experience.
Content promotion in the SAP Cloud platform can happen through two different methods: the content network or a file server. The content network provides a more secure method of transporting content and has no requirement to download files to a user’s server, thereby eliminating the possibility of content being lost or stolen. Additionally, content transported through the network can be shared with multiple tenants through a repeatable process.
Content promotion can also happen through the usage of a locally downloaded file. The export package is created under file server and, once completed, a file in the format of TGZ is downloaded to the user’s local drive. This file can be shared with other users inside or outside of the organization and includes any support requests from SAP. The file can then be imported into the target tenant.
Considerations for promoting content
Regardless of the method used to transport files (content network or file server), packages can only be imported into an SAP Analytics Cloud tenant at the same version or one version after the source. Because of this, it’s not advisable to use this as a backup or archiving system. It is likely that when the archives need to be restored, the version of the SAP Analytics Cloud tenant will no longer align with the version requirements of the same or one newer version. In a content network scenario, the packages will not appear in the destination. In a file server scenario, the import will fail.
To archive objects in the SAP Analytics Cloud system, consider making copies of the content. When making a copy of the file, if a file of the same name exists in the destination, a new file will be created called – copy. Bear in mind that if a copy of a story needs to be restored to the original version, all references to the original story will be invalid. This includes any shortcut links to a story. Additionally, Protiviti advises maintaining backups of stories and models in an archive directory, but you don’t have overwrite capabilities. If an original story is deleted and copied into an archive folder with the same name, all references to the old archive file will be invalid.
When transporting analytic content from one system to another, it is important to maintain the concept of source and destination. As mentioned, the source and destination must be on the same version, or the destination must be one version newer than the source. When migrating SAP analytic content, consider the size and complexity of the export packages. For larger packages with lots of stories, models, connections, etc., content should be organized into multiple folders or tags used for easy searching. This way, the content can be easily browsed and searched to determine exactly what needs to be imported in the destination. Also consider the enable job for export and import in the system -> administration -> system configuration screen. This will run the larger imports and exports as background jobs. It is also possible to increase the job size on this same page by increasing the “package size for export.” These settings can be changed by clicking the pencil icon.
As the export progresses, the status of the export may be viewed by looking at the notification panel on the top right corner of the SAP Analytics Cloud interface. It is possible to continue working in the environment while the export is taking place, however, any changes to exported content while the promotion is running may not be captured. It’s best to implement a development freeze and allow the export procedure to complete.
As part of the export package, any acquired data in models can be transported with the models themselves. Think about how much data is contained within these models and whether the data needs to be copied to the destination. Exporting content with data can greatly increase the size of the export package. Consider exporting the content without the data. Once the stories, models, etc. are imported into the destination, refresh the models against the correct data sources.
Teams can be automatically exported by including the necessary teams in the export package. Users, however, cannot be transported in an export package. To transport a user listing, go to the security -> users area and click the export button. A comma separate values (CSV) file will be automatically downloaded that contains all users. Ensure this file is imported in security -> users before the content is migrated in the content network.
Users’ private content cannot be migrated. Move the content into a public folder and then migrate. The files can then be copied into a user’s private folders in the destination environment.
Once content has been exported from a source environment, the content can then be imported into a destination environment. If the export uses the content network, simply navigate to the transport -> import section of SAP Analytics Cloud. Ensure that any packages that have been shared are listed in the content network storage tab. If they are not listed, ensure that the versions match (same or one newer). Also, ensure that the exporter specified the correct tenant URL. Finally, click on the gear icon in content network storage and ensure the “show content shared by all systems” is enabled.
Exported objects are matched in the destination by their folder path and names. If an object exists in the destination with the same location and name, opt to overwrite the destination. Review the options in the “import options” panel of an export package for more details on import methods.
Connection credentials are not automatically transferred by default. This is for the security of the connections. Once the content has been successfully migrated, review the imported connections, and update any necessary credentials. The connections that require updates will be highlighted in red.
If transporting models based on scheduled refreshes of various SAP sources — including UNX universes (but not including SAP S/4HANA) — the schedule information is brought over so that the model data can be easily refreshed.
Users cannot be transported in an import/export scenario. Users must be exported and imported separately on the users’ management page. Just click the import button and follow the instructions to import a listing of users prior to the import of the full content.
Check, double-check and triple-check the environment in which an import is being run. It is possible to run an import into a system that acts as the source. In fact, this is a more likely scenario for a file system import. If this happens, the connections will have their credentials wiped out and must be re-established before any model refreshes can happen. Be intentional on the destination tenant when running an import so that no production data are lost.
If data was exported with the model, then such data can be excluded from the import. On the import options screen, simply uncheck the include data column. This can be done on a dimension-by-dimension or model-by-model basis or all at once for all objects.
Security will not be migrated with an export/import process. Ensure that objects that are migrated over are then secured in the destination as required by the business.
Overall content promotion process
Here is an example of a recommended approach to promoting content from one SAP Analytics Cloud tenant to another:
- Verify the version numbers of both tenants. They must be the same or one version off.
- Gather the URLs of both source and destination tenants.
- Decide what content will be migrated and if data will be copied as well. If users must be migrated, perform that copy in the users screen via CSV file download BEFORE migrating content.
- Create an export package in the source environment. Dependencies are automatically selected once an object is checked.
- On the package properties, ensure that the destination URL is added to sharing. Terms and conditions are not necessary if this is not salable content.
- On import, verify that the content was copied over, users belong to appropriate teams and security is set. Establish security as necessary in the destination environment.
- Update the connections so that any credentials are added.
- Test the destination environment thoroughly.
The SAP Analytics Cloud system contains a robust method by which content can be migrated across environments. Different methods to migrate content are available, with their own advantages and disadvantages. These methods of content migration ensure that we can use a reliable, repeatable and governable method to develop, maintain and take to production content that is valuable to end users of the SAP Cloud platform. As an SAP partner, Protiviti is equipped to support customers through the SAP Analytics Cloud planning and project management processes.