Déploiement haute disponibilité
Lorsque vous utilisez le service de récupération de l'agent dans l'emplacement multirégional us, vous bénéficiez d'un SLA de disponibilité de diffusion plus élevé et d'un temps d'activité continu, même en cas de panne régionale.
La zone multirégionale us fournit la même API que le reste d'Agent Retrieval, avec quelques limites. Vos données de l'emplacement multirégional us sont répliquées dans des régions des États-Unis continentaux, et tous les index actifs de l'emplacement multirégional us disposent de serveurs redondants provisionnés dans chacune de ces régions. Dans des conditions de fonctionnement normales, vos requêtes sont diffusées à partir de la région vers laquelle votre client réseau présente une latence optimale. En cas de panne ou de perte de capacité de diffusion, l'équilibreur de charge de Google redirige votre requête vers la région disponible la plus proche. La configuration et la maintenance de l'équilibrage de charge et de la réplication sont entièrement gérées par Agent Retrieval.
REMARQUE : Compte tenu de l'engagement des ressources matérielles et d'ingénierie nécessaires pour assurer la haute disponibilité de la récupération par agent, les projets des clients ne peuvent être intégrés à la configuration multirégionale à haute disponibilité qu'après avoir été spécifiquement validés et ajoutés à la liste d'autorisation. Pour demander l'accès à la fonctionnalité multirégionale à haute disponibilité, remplissez le formulaire de demande.
Intégration
Vous devez demander à être ajouté à la liste d'autorisation pour accéder à l'emplacement multirégional à haute disponibilité.
Une fois que vous avez reçu la confirmation que votre projet a été ajouté à la liste d'autorisation pour accéder à l'emplacement multirégional à haute disponibilité, vous pouvez créer des collections, des objets de données et des index dans l'emplacement multirégional us. Suivez la documentation standard de l'API Agent Retrieval, en remplaçant us là où vous spécifieriez normalement une seule région (comme us-central1 ou europe-central2).
Toutes les données importées et les opérations effectuées dans l'emplacement multirégional us bénéficient d'une réplication, d'une redondance et d'une disponibilité améliorées.
Facturation
Les tarifs de facturation pour l'emplacement multirégional sont plus élevés que ceux de l'emplacement régional standard, ce qui reflète l'augmentation des coûts de réplication et la priorité opérationnelle plus élevée.
Pour en savoir plus, consultez les tarifs.
Limites
L'optimisation du stockage n'est pas implémentée. Seuls les index de niveau "Optimisé pour les performances" peuvent être déployés dans l'emplacement multirégional.
Les appels SearchDataObjects aux index sur des vecteurs d'embeddings non normalisés peuvent signaler des métriques de distance inattendues dans l'emplacement multirégional. La récupération et le classement des points de données de ces index seront corrects (dans les limites d'un index de voisins les plus proches approximatifs). Nous vous recommandons de toujours fournir des vecteurs d'embeddings normalisés ou de vous appuyer sur la génération automatique d'embeddings.
Seule la distance DOT_PRODUCT_DISTANCE est acceptée dans l'emplacement multirégional.
Les embeddings creux ne sont pas compatibles avec l'emplacement multirégional. Pour les requêtes de recherche vectorielle où des jetons spécifiques doivent être présents dans certains champs, l'opérateur $search peut être utilisé dans l'expression de filtre de la requête.
Le champ Index.dedicated_infrastructure.autoscaling_spec des requêtes CreateIndex et UpdateIndex n'est pas utilisé dans l'emplacement multirégional.
Le champ SearchHint.IndexHint.dense_scann_params dans SearchDataObjectsRequests n'est pas utilisé dans l'emplacement multirégional. Les index ANN multirégionaux sont réglés pour fournir un rappel d'environ 95 %, bien que le rappel puisse varier en fonction des spécificités de vos données.
Migrer depuis un déploiement régional
Si vous disposez de données dans une collection de récupération d'agent régionale, vous pouvez utiliser le workflow général suivant pour cloner ces données dans l'emplacement us :
- Exportez les données de votre collection dans un bucket situé dans la région qui héberge la collection, en supprimant les etags.
- Importez les données du bucket dans une collection hébergée dans l'emplacement
us.
Avant de commencer
Assurez-vous de disposer des éléments suivants :
- Un bucket dans la région source, à utiliser comme zone de préproduction d'exportation.
- Une installation de la CLI
gcloud. - Autorisation IAM de lecture sur la collection source, d'écriture sur la destination, et de lecture et d'écriture sur le bucket.
- Une collection de destination déjà créée dans
usavec le même schéma que la source.
PROJECT_ID : projet contenant la collection à migrer. Les commandes suivantes supposent que les projets source et de destination sont identiques.
SOURCE_LOCATION : emplacement de la collection source, par exemple us-central1.
SOURCE_COLLECTION : nom de la collection à migrer.
STAGING_BUCKET : chemin d'accès à un répertoire dans un bucket vers lequel vous souhaitez exporter les données de la collection, par exemple gs://your-bucket-id.
Étapes
Chaque extrait peut être copié-collé. Remplacez les espaces réservés en haut de chaque bloc par des valeurs spécifiques à votre projet, à l'emplacement source, à la collection et aux buckets.
1. Exporter depuis la région source
cat > request.json <<EOF
{
"gcsDestination": {
"exportUri": "STAGING_BUCKET/export/",
"format": "JSONL"
},
"field_filter": {
"excluded_fields": {
"fields": ["etag"]
}
}
}
EOF
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vectorsearch.googleapis.com/v1/projects/PROJECT_ID/locations/SOURCE_LOCATION/collections/SOURCE_COLLECTION:exportDataObjects"
La réponse inclut un nom d'opération tel que projects/.../locations/us-central1/operations/operation-.... Interrogez-la jusqu'à ce que "done": true.
EXPORT_OPERATION_NAME
gcloud vector-search operations describe "EXPORT_OPERATION_NAME" \
--location="SOURCE_LOCATION"
2. Importer aux États-Unis
DEST_COLLECTION : nom de la collection après la migration (peut être identique au nom d'origine).
gcloud vector-search collections import-data-objects "DEST_COLLECTION" \
--location="us" \
--project="PROJECT_ID" \
--gcs-import-contents-uri="STAGING_BUCKET/export/" \
--gcs-import-error-uri="STAGING_BUCKET/import-errors/" \
--gcs-import-output-uri="STAGING_BUCKET/import-output/" \
--async
Interrogez l'opération renvoyée de la même manière que l'exportation :
IMPORT_OPERATION_NAME
gcloud vector-search operations describe "IMPORT_OPERATION_NAME" \
--location="us"
3. Vérifier l'importation
- Vérifiez si des enregistrements ont été refusés dans
gs://your-bucket-uscentral1/import-errors/. - Comparez le nombre d'enregistrements entre la source et la destination.
- Exécutez quelques requêtes connues sur les deux et comparez les résultats.