Vault Migrations Overview
A Vault migration refers to the loading of large volumes of data or documents into Vault. This article is intended for customers considering a Vault migration project. It provides suggestions and best practices for planning, developing, and executing a Vault migration.
The two common migration use cases are:
- Legacy Migration: When replacing a legacy system with Vault, it is common to migrate data from the legacy system into Vault. This type of migration usually occurs during the Vault implementation project for a new Vault, but can also happen when implementing a new application in an existing Vault.
- Incremental Migration: Any business event which requires adding new data to Vault may require incremental migration. For example, a phased rollout, system consolidation, or a company acquisition. Incremental migrations occur independent of an application implementation and can affect a live production Vault application.
While there are general best practices and data transformation considerations that apply when migrating data to Vault, see the following guides for specific application families:
Approach
Section link for ApproachAt a high level, data migration into Vault generally requires the following steps:
- Extracting data from a legacy system
- Transforming data into the target format
- Resolving data quality issues
- Staging data and files from the production Vault in a sandbox Vault
- Performing dry runs for loading and verification of data and files in a sandbox Vault
- Performing a validation run for loading and verification of data and files in a sandbox Vault
- Loading and verifying data and files in a production Vault
The complexity, effort, and timing of these steps vary depending on the data volume, data complexity, system availability requirements, and tools. Choosing the correct approach is the key to a successful migration project.
Planning
Section link for PlanningThe migration plan should consider dependencies between the Vault configuration and data preparation and provide adequate time for testing and validation. It is important that you conduct performance testing to properly estimate the time it will take to complete migration activities.
API Threading
Section link for API ThreadingMigrations using multiple threads are not supported, and we strongly recommend factoring this into project timelines, including the execution time for migration runs. While we support multi-threading on file staging downloads, the following restrictions apply when executing API calls during a migration:
- The document API endpoints support a maximum of one thread.
- The object API endpoints support a maximum of two threads.