Depuis Milvus 2.3.x
Ce guide fournit un processus complet, étape par étape, de migration des données de Milvus 2.3.x vers Milvus 2.3.x ou supérieur.
Conditions préalables
- Versions du logiciel:
- Milvus source : 2.3.0+ (L'outil utilise l'itérateur pour récupérer les données de collecte source, ce qui nécessite que Milvus source soit la version 2.3.0 ou supérieure).
- Milvus cible : 2.3.0+.
- Outils requis:
- OutilMilvus-migration. Pour plus de détails sur l'installation, voir Installer l'outil de migration.
- Préparation des données:
- S'assurer que la collection Milvus source est chargée et prête pour l'exportation des données.
- Si le Milvus cible ne contient pas de collection correspondant à la collection source, l'outil milvus-migration la créera automatiquement. Notez qu'après la migration, la collection cible ne sera pas indexée et que vous devrez l'indexer manuellement par la suite.
Configurer le fichier de migration
Enregistrez le fichier de configuration de l'exemple de migration sous migration.yaml
et modifiez les configurations en fonction de vos conditions réelles. Vous pouvez placer le fichier de configuration dans n'importe quel répertoire local.
dumper:
worker:
workMode: milvus2x
reader:
bufferSize: 500
meta:
mode: config
version: 2.3.0
collection: src_table_name
source:
milvus2x:
endpoint: {milvus2x_domain}:{milvus2x_port}
username: xxxx
password: xxxxx
target:
milvus2x:
endpoint: {milvus2x_domain}:{milvus2x_port}
username: xxxx
password: xxxxx
Le tableau suivant décrit les paramètres du fichier de configuration de l'exemple. Pour plus d'informations, reportez-vous à Milvus Migration : Milvus2.x vers Milvus2.x.
dumper
Paramètre Description dumper.worker.workMode
Mode opérationnel de la tâche de migration. Défini sur milvus2x lors de la migration à partir de Milvus 2.x. dumper.worker.reader.bufferSize
Taille de la mémoire tampon à lire à partir de Milvus 2.x dans chaque lot. meta
Paramètre Description meta.mode
Spécifie l'endroit où le métafichier est lu. La valeur config indique que la configuration méta peut être obtenue à partir de ce fichier migration.yaml. meta.version
Version source de Milvus. Défini sur 2.3.0 ou supérieur. meta.collection
Nom de la collection source. source
Paramètre Description source.milvus2x.endpoint
Adresse du serveur Milvus source. source.milvus2x.username
Nom d'utilisateur du serveur Milvus source. Ce paramètre est requis si l'authentification utilisateur est activée pour votre serveur Milvus. Pour plus d'informations, voir Activer l'authentification. source.milvus2x.password
Mot de passe du serveur Milvus source. Ce paramètre est requis si l'authentification utilisateur est activée pour votre serveur Milvus. Pour plus d'informations, voir Activer l'authentification. target
Paramètre Description de l'adresse du serveur Milvus cible target.milvus2x.endpoint
Adresse du serveur Milvus cible. target.milvus2x.username
Nom d'utilisateur du serveur Milvus cible. Ce paramètre est requis si l'authentification utilisateur est activée pour votre serveur Milvus. Pour plus d'informations, voir Activer l'authentification. target.milvus2x.password
Mot de passe du serveur Milvus cible. Ce paramètre est requis si l'authentification utilisateur est activée pour votre serveur Milvus. Pour plus d'informations, voir Activer l'authentification.
Démarrer la tâche de migration
Vous avez deux options pour démarrer la tâche de migration : utiliser le CLI ou effectuer des requêtes API. Choisissez celle qui correspond le mieux à vos besoins.
Option 1 : Utilisation de l'interface de programmation
Lancez la tâche de migration à l'aide de la commande suivante. Remplacez {YourConfigFilePath}
par le répertoire local où se trouve le fichier de configuration migration.yaml
.
./milvus-migration start --config=/{YourConfigFilePath}/migration.yaml
Surveillez les journaux pour connaître l'état d'avancement de la migration. Les journaux de migration réussie devraient contenir des entrées telles que :
[INFO] [migration/milvus2x_starter.go:79] ["=================>JobProcess!"] [Percent=100]
[INFO] [migration/milvus2x_starter.go:27] ["[Starter] migration Milvus2x to Milvus2x finish!!!"] [Cost=94.877717375]
[INFO] [starter/starter.go:109] ["[Starter] Migration Success!"] [Cost=94.878243583]
Option 2 : Faire des demandes d'API
Vous pouvez également utiliser l'API Restful pour exécuter la migration. Démarrez le serveur API avec :
./milvus-migration server run -p 8080
Une fois le serveur démarré avec succès, placez le fichier migration.yaml
dans le répertoire configs/
du projet et démarrez la migration avec :
curl -XPOST http://localhost:8080/api/v1/start
Vérifier le résultat
Une fois la tâche de migration terminée, utilisez Attu pour afficher le nombre d'entités migrées. En outre, vous pouvez créer des index et charger des collections dans Attu. Pour plus d'informations, reportez-vous à Attu et get_collection_stats().
Options de configuration supplémentaires
Outre les configurations de base mentionnées ci-dessus, vous pouvez également ajouter des paramètres supplémentaires en fonction de vos besoins spécifiques.
Migration sélective des champs: Si vous avez besoin de migrer uniquement des champs spécifiques dans une collection plutôt que tous les champs, spécifiez les champs à migrer dans la section
meta
du fichiermigration.yaml
.meta: fields: - name: id - name: title_vector - name: reading_time
Collection cible personnalisée: Pour personnaliser les propriétés de la collection cible, ajoutez les configurations correspondantes dans la section
meta
du fichiermigration.yaml
.meta: milvus: collection: target_collection_name shardNum: 2 closeDynamicField: false consistencyLevel: Customized
Pour des informations détaillées, voir Milvus Migration : Milvus2.x à Milvus2.x.