Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Sincronizzazione dei dati tra tabelle e indici vettoriali
DynamoDB mantiene automaticamente sincronizzato un indice vettoriale con la sua tabella di base. Comprendere come funziona la sincronizzazione aiuta a prevedere quando i risultati della ricerca sono completi e perché un elemento potrebbe non apparire nei risultati.
Riempimento di un indice su una tabella esistente
Quando aggiungi un indice vettoriale a una tabella che contiene già elementi, DynamoDB riempie l'indice con i dati esistenti. L'indice passa prima a IndexStatus CREATING mentre DynamoDB configura l'infrastruttura dell'indice. Quindi passa a IndexStatus ACTIVE with Backfilling set to true mentre DynamoDB compila l'indice dai dati della tabella di base esistente. Le nuove scritture nella tabella di base vengono replicate nell'indice durante questa fase, ma SearchVectors restituiscono un errore fino al termine del riempimento. Usa DescribeTable e attendi che sia così com'IndexStatusBackfillingè ACTIVE false prima di effettuare la ricerca. Per informazioni, consulta Aggiungere un indice vettoriale a una tabella esistente.
Sincronizzazione continua della scrittura
Dopo che l'indice è attivo, DynamoDB replica ogni scrittura nella tabella di base nell'indice vettoriale. I seguenti comportamenti influenzano se e come una scrittura raggiunge l'indice:
-
Un elemento viene replicato nell'indice solo se contiene un attributo vettoriale valido. Se l'indice definisce una chiave di partizione, l'elemento deve contenere anche l'attributo della chiave di partizione; in caso contrario, la scrittura ha esito positivo sulla tabella di base ma l'elemento non viene replicato nell'indice.
-
I valori vettoriali vengono memorizzati nella tabella di base così come sono stati scritti, ma nell'indice con una precisione a 32 bit in virgola mobile (f32). I valori con una precisione maggiore perdono tale precisione quando vengono replicati nell'indice.
-
Quando si elimina l'attributo vettoriale da un elemento o si elimina l'elemento, la voce corrispondente viene rimossa dall'indice.
Per il set completo di regole di convalida della scrittura, vedere. Scrittura di elementi con dati vettoriali
Sincronizzazione tra regioni
Quando una tabella con un indice vettoriale è una tabella globale, DynamoDB replica le scritture in qualsiasi regione di replica nelle altre regioni e le indicizza lì. DynamoDB replica i dati nell'indice vettoriale in modo asincrono. Un vettore scritto in una regione potrebbe non apparire immediatamente nei SearchVectors risultati in un'altra regione, anche se la tabella utilizza la coerenza forte multiregionale (MRSC). Per informazioni, consulta Utilizzo di indici vettoriali con tabelle globali.