

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation d'index vectoriels avec des tables globales
<a name="VectorSearchGlobalTables"></a>

Vous pouvez utiliser des index vectoriels avec des tables globales pour effectuer une recherche de similarité dans plusieurs AWS régions. Lorsque vous ajoutez un réplica à une table qui possède un index vectoriel, DynamoDB réplique automatiquement la définition de l'index vectoriel dans la nouvelle région de réplica. Vous ne créez pas l'index vectoriel séparément dans chaque région. Les éléments que vous écrivez dans n'importe quelle région de réplication sont répliqués dans les autres régions et y sont indexés. Les résultats de la région locale sont donc `SearchVectors` renvoyés.

Vous pouvez utiliser des index vectoriels avec chaque configuration de table globale :
+ **Multi-Region cohérence éventuelle (MREC) ** : mode de cohérence par défaut pour les tables globales. Pour de plus amples informations, veuillez consulter [Multi-Region cohérence éventuelle (MREC)](V2globaltables_HowItWorks.md#V2globaltables_HowItWorks.consistency-modes.mrec).
+ **Multi-Region cohérence forte (MRSC) ** — Mode de cohérence qui fournit des lectures très cohérentes entre les régions. Pour de plus amples informations, veuillez consulter [Multi-Region forte cohérence (MRSC)](V2globaltables_HowItWorks.md#V2globaltables_HowItWorks.consistency-modes.mrsc).
+ **Multi-account tables globales ** : tables globales répliquées sur tous les AWS comptes. Pour de plus amples informations, veuillez consulter [Tables globales multicomptes DynamoDB](globaltables-MultiAccount.md).

Multi-account les tables globales utilisent toujours MREC car MRSC ne prend en charge que les configurations pour les mêmes comptes. Il s'agit d'une contrainte de table globale, et non d'une limitation d'index vectoriel.

L'exemple suivant ajoute une réplique dans la `us-west-2` région à une table nommée `Products` qui possède déjà un index vectoriel. La table doit utiliser le mode de capacité à la demande, qui est requis à la fois pour les index vectoriels et pour cet exemple.

```
aws dynamodb update-table \
    --table-name Products \
    --region us-east-1 \
    --replica-updates '[{"Create": {"RegionName": "us-west-2"}}]'
```

Pendant la création du réplica, l'état de la table source est `UPDATING` et celui de la réplique `ReplicaStatus` est`CREATING`. `DescribeTable`À utiliser pour confirmer que la réplique atteint `ACTIVE` et pour vérifier que l'indice vectoriel a été répliqué. La région de réplique indique le même nom d'index vectoriel, les mêmes dimensions, la même fonction de distance et la même projection que la région source.

```
aws dynamodb describe-table \
    --table-name Products \
    --region us-west-2
```

Une fois la réplique active, vous pouvez l'exécuter `SearchVectors` sur la région du réplica sur le même ensemble de vecteurs que la région source. Avant de lancer une recherche dans la région de réplication, utilisez-la `DescribeTable` dans cette région et confirmez que l'index vectoriel a terminé son remplissage, c'est-à-dire qu'`IndexStatus`il est `ACTIVE` et qu'il `Backfilling` est`false`. L'index vectoriel de la réplique se remplit indépendamment, de sorte qu'il peut toujours être remblayé pendant une courte période après que la réplique elle-même soit devenue active. Étant donné que la recherche vectorielle utilise le voisin le plus proche approximatif (ANN), le classement peut légèrement différer d'une région à l'autre pour une même requête, même pour des données identiques.

```
aws dynamodb search-vectors \
    --table-name Products \
    --region us-west-2 \
    --index-name ProductEmbeddingIndex \
    --search-vector '[{"N": "0.1234"}, {"N": "-0.5678"}, {"N": "0.9012"}, ...]' \
    --top-k 10
```

**Le retard de réplication affecte les résultats de recherche interrégionaux**  
L'indice vectoriel se propage de manière asynchrone entre les régions, même pour les tables globales MRSC (Multi-region strong consistency). Un vecteur que vous écrivez dans une région peut ne pas apparaître immédiatement dans les `SearchVectors` résultats d'une autre région. Pour lire les écrits les plus récents, envoyez la recherche à la région où l'écriture a été réalisée.