Skip to main content

Offline Migration

Offline Migration transfers all existing data from a source Zilliz Cloud cluster to a target Zilliz Cloud cluster. This method supports migrations both within the same organization and across different organizations. It is ideal for scenarios where temporary write interruptions are acceptable, such as during planned maintenance or smaller-scale database transitions.

📘Notes

If your application keeps writing to the source cluster during cutover, the target cluster might miss new entities, especially entities inserted after the migration job completes. To keep the target data complete, schedule a cutover window, pause writes to the source cluster, wait for the migration job to complete, validate the target cluster, and then resume writes on the target cluster only.

Migration capabilities

Cluster compatibility

The following table outlines the migration capabilities and constraints between clusters of different deployment options:

Source

Target

Free cluster

Serverless cluster

Dedicated cluster

Free cluster

Not supported

Not supported

(You can only upgrade a Free cluster to a Serverless cluster. Refer to Manage Cluster for more details.)

Supported

(You can also upgrade a Free cluster to a dedicated cluster. Refer to Manage Cluster for more details.)

Serverless cluster

Not supported

Supported

Supported

Dedicated cluster

Not supported

Not supported

Supported

Migration scope options

Migration TypeDescriptionUse Cases
Within same projectMigrate between existing clusters in the same Zilliz Cloud projectCluster upgrades, performance optimization, data consolidation
Cross-project or organizationMigrate between existing clusters in different Zilliz Cloud projects or organizationsCompany mergers, department transfers, multi-tenant scenarios

Direct data transfer

Offline migration performs direct data replication between Zilliz Cloud clusters with the following characteristics:

  • Schema preservation: Source schema transferred unchanged to target cluster

  • No field modifications: Cannot rename fields, change data types, or modify field attributes during migration

  • Automatic indexing: AUTOINDEX automatically created for vector fields in target cluster

  • One-time data copy: Offline Migration copies data from the source cluster during the migration job. It does not keep the target cluster synchronized with new writes after the migration job completes.

Prerequisites

Before starting your offline migration, ensure you meet these requirements:

General requirements

RequirementDetails
User permissionsOrganization Owner or Project Admin role
Source cluster accessSource cluster must be accessible from the public internet
Target cluster capacitySufficient CU size to accommodate source data (use the CU calculator)

Cross-project or organization migration requirements

RequirementDetails
Connection credentialsPublic endpoint, API key, or cluster username and password for source cluster
Network accessAbility to connect to source cluster from target organization

Plan the cutover

Before starting an offline migration, choose a cutover window when your application can temporarily stop writing to the source cluster. Use the following process to avoid missing data:

  1. Pause writes to the source cluster before the final migration and validation window.

  2. Run the migration job and wait until the job status changes to Successful.

  3. Validate the data in the target cluster, such as by checking the number of entities and sampling recently inserted entities.

  4. Switch application reads and writes to the target cluster.

  5. Resume writes only on the target cluster.

Keep the source cluster available until you confirm that the migrated data is complete.

Getting started

The following demo walks you through the complete offline migration process:

📘Notes

The migrated collections are not immediately available for search or query operations. You must manually load the collections in Zilliz Cloud to enable search and query functionalities. For details, refer to Load & Release.

Ctrl I