DynamoDB Index secondari locali

DynamoDB Index secondari locali
Gli indici secondari locali DynamoDB, noti anche come LSIS, contengono copie o repliche di tutti o alcuni attributi della tabella. Forniscono anche chiavi di ordinamento alternative per le chiavi del valore della partizione. Usano tasti di ordinamento diversi per organizzare i dati utilizzando le chiavi della partizione della tabella.

Pertanto, la creazione di uno o più indici secondari locali fornisce alle applicazioni la scelta di beneficiare di chiavi di ordinamento alternative quando si eseguono le query piuttosto che fare affidamento esclusivamente sulle chiavi principali della tabella di base. L'uso di indici secondari locali elimina la necessità di scansioni di tabelle intere poiché è possibile utilizzare semplicemente un tasto di ordinamento per eseguire query rapide.

Questa funzione rende gli indici secondari locali vitali per le applicazioni che trarrebbero beneficio da chiavi di ordinamento alternative. La creazione di un indice secondario locale su una tabella DynamoDB consente di emettere una scansione o una query contro gli indici.

Come creare un indice secondario locale su una tabella DynamoDB

Prima di iniziare a creare gli indici secondari locali, è fondamentale notare che tutti gli indici secondari locali devono soddisfare le seguenti condizioni:

  • Avere un tasto di ordinamento che contiene solo un singolo attributo scalare
  • Hanno chiavi di partizione identiche e tasti di partizione della tabella di origine
  • Progetta la tabella di origine Ordina la chiave per agire come attributo non chiave
  • Le tabelle con LSIS hanno un sizelimit fino a 10 GB per valore chiave di partizione
  • LSIS può condividere il throughput con le tabelle di base

È necessario utilizzare il parametro della gente del posto nell'intervento creativo per creare un indice secondario locale. Di solito, la creazione di un LSI avviene mentre si crea una tabella DynamoDB. Allo stesso modo, l'eliminazione di una tabella rimuove anche tutti gli indici secondari locali nella tabella.

Quando si crea un LSI, ricordati di specificare un singolo attributo non chiave che funge da tasto di ordinamento per l'LSI. L'attributo scelto deve essere un numero scalare, una stringa o un binario poiché altri tipi di documenti, tipi scalari e tipi di set sono vietati. Inoltre, è possibile proiettare comodamente gli attributi come scalari, set e documenti nel tuo indice secondario locale.

Utilizzo di indici secondari locali di DynamoDB

Di seguito sono riportati alcuni dei casi per gli indici secondari locali:

UN. Eseguire domande e scansioni
LSIS abilita i diversi ordini di smistamento dello stesso elenco di elementi. Mentre usano tasti di ordinamento diversi, hanno sempre le stesse chiavi di partizione. Ad esempio, una tabella con UserId come chiave di partizione, SongTitle come chiave di ordinamento e dati e dati come altri attributi sembrano questo:

| Userid (chiave di partizione) | SongTitle (ordinamento) | Dateadded | Dati |

La tabella precedente può rispondere a query che hanno lo scopo di recuperare tutte le canzoni che sono ordinate con nomi per ciascun utente interrogando l'utente. Tuttavia, recuperare tutte le canzoni per utente per data aggiunta significa che si recuperano tutti i brani e li ordinate.

È ancora possibile utilizzare un indice utente locale con un UserId come chiave di partizione e il dateadded nella categoria dei tasti di ordinamento e recuperare istantaneamente i brani dell'utente che vengono ordinati per data aggiunta. Questo perché le operazioni di query su indici secondari locali restituiscono tutti gli elementi che portano i valori chiave della partizione simili ogni volta che più di un elemento condividono un valore chiave breve.

Ancora una volta, non esiste un ordine particolare che arrivino gli oggetti corrispondenti. Le query su LSIS utilizzano una coerenza forte o eventuale. Forti lead coerenti riportano naturalmente gli ultimi valori.

D'altra parte, le operazioni di scansione LSI restituiscono normalmente tutti i dati dell'indice secondario locale. Quando si effettua una scansione, è necessario specificare sia la tabella che il nome dell'indice. Inoltre, le scansioni consentono all'uso delle espressioni del filtro di scartare i dati.

| Userid (chiave di partizione) | DateAdded (Ordina chiave) | SongTitle | Dati |

B. Scrittura di articoli
L'articolo che scrive su indici secondari locali è un'operazione piuttosto semplice. È necessario iniziare con la specifica di un attributo chiave di ordinamento insieme al suo tipo di dati. Assicurarsi che il tipo di ciascun elemento debba corrispondere al suo tipo di dati del suo schema chiave nel caso in cui l'elemento definisca un attributo di qualsiasi chiave indice.

C. Collezioni di articoli negli indici secondari locali
Una raccolta di articoli in DynamoDB si riferisce a un gruppo di elementi con un valore chiave di partizione simile in una tabella e tutti i suoi LSI. Nel seguente esempio, il nome della tabella è corrispondenza e la chiave di partizione è gruppo di gruppo. Il nome della seconda tabella è LastMaiLindex ma porta lo stesso nome di partizione che è gruppo di gruppo.

Le tabelle e gli elementi indicizzati con la chiave di partizione GroupName appartengono alla stessa raccolta degli elementi.

Conclusione

Gli indici secondari locali DynamoDB sono ideali per applicazioni che beneficiano dell'esecuzione delle query utilizzando le chiavi di ordinamento aternate. Puoi creare uno o più LSI per applicazione a seconda delle tue esigenze. Semplificano il tuo lavoro e aumentano la tua produttività.