Come utilizzare gli indici secondari globali DynamoDB

Come utilizzare gli indici secondari globali DynamoDB
Gli indici secondari globali DynamoDB sono indici che contengono chiavi di ordinamento e chiavi di partizione diverse dalla chiave primaria della tabella di base. Derivano il loro nome "globale" dal fatto che consentono l'accesso ai dati da varie partizioni della tabella di base durante le operazioni di query.

Gli indici secondari globali sono adatti per applicazioni e programmi che potrebbero dover eseguire diversi tipi di query utilizzando set di attributi diversi come criteri di query. Gli indici secondari globali supportano tali applicazioni. La creazione di uno o più GSI sul tuo tavolo ti aiuterà a emettere le richieste di query contro gli indici in Amazon DynamoDB.

In particolare, una tabella DynamoDB può avere più indici secondari globali. Questo è incredibilmente prezioso per le applicazioni poiché avere più chiavi secondarie in una singola tabella migliora l'accesso ai dati utilizzando gli attributi diversi dalle chiavi primarie. Inoltre, GSIS può supportare attributi non unici, dando maggiore flessibilità consentendo di eseguire le domande contro gli attributi non chiave.

Come creare un indice secondario globale

Mentre è possibile creare un indice secondario globale quando inizialmente si crea una tabella, come se fosse comune quando crei indici secondari locali, hai anche la flessibilità di aggiungere un indice secondario globale dopo aver creato una tabella. Quando si sceglie il metodo precedente, DynamoDB riempie automaticamente il tuo GSI utilizzando i dati nella tabella già creata.

Discutiamo brevemente i due metodi:

UN. Creazione di un indice secondario globale per una nuova tabella

È possibile creare un GSI utilizzando la console di gestione AWS. Accedi al tuo account AWS sulla console e fai clic su DynamoDB.

Fai clic sulle tabelle e vai alla sezione Crea tabella come fai normalmente durante la creazione di una nuova tabella. Questa sezione ti consente di personalizzare le tabelle in modo appropriato. Nomina la tabella come desiderato e fai clic su Personalizza le impostazioni.

Una nuova sezione viene visualizzata nella parte inferiore della pagina precedente quando si fa clic su Personalizza le impostazioni. La nuova interfaccia consente di creare gli indici secondari secondari o globali locali. Fai clic sulla casella "Crea indice globale" e continua.

Il passaggio precedente ti introduce nella sezione finale in cui è necessario fornire i dettagli del tuo indice secondario globale definendo la sua chiave di partizione, il nome dell'indice, la chiave di ordinamento e le proiezioni degli attributi.

B. Crea un indice secondario globale per una tabella esistente

Esistono due opzioni per la creazione di un indice secondario globale: i comandi della CLI AWS o l'utilizzo della console di gestione AWS. L'uso del comando CLI è piuttosto semplice. Tutto ciò di cui hai bisogno è il comando nome-indice e definisce il tuo nome da tavolo nel comando.

AWS DynamoDB Update Table \
--Raccolta musicale da tavolo \
--Attributi Definizioni attributeName = name, attributeType = s \
--aggiornamenti globali-secondari-indici \
"[" Create ": " indexName ":" Name-Index "," keyschema ": [" attributename ":" name "," keytype ":" hash "], \
"ProvisionEdThroughput": "readcapacityunits": 10, "writecapacityunits": 5, "proiezione": "proiectiontype": "all"] "

Se si desidera utilizzare la console di gestione AWS, vai al tuo elenco di tabelle, scegli la tabella in cui si intende creare un indice secondario globale e passare alla scheda degli indici. Fai clic sulla scheda "Crea indice".

Facendo clic sulla scheda "Crea indice" porta alla procedura guidata dell'indice secondario globale in cui si personalizza l'indice con gli attributi pertinenti.

Utilizzo di tabelle secondarie globali Dynamo

Di seguito sono riportati alcuni dei casi d'uso degli indici secondari globali DynamoDB:

UN. Interrogare l'indice secondario globale

È possibile utilizzare il comando query dall'API DynamoDB per eseguire le operazioni di query sugli indici secondari globali. Il comando di query è come mostrato nel seguente:

AWS DynamoDB query \
--Raccolta musicale da tavolo \
--indice-name songtitle-indice \
--espressione chiave-condizione "SongTitle =: nome" \
--espressione-attribute-value '": name": "s": "topping grafici"'
"ConsumedCapacity": Null

B. Scansione delle tabelle secondarie globali DynamoDB

È inoltre possibile eseguire un'operazione di scansione sul tuo GSI utilizzando il comando di scansione DynamoDB. Di solito, il comando di scansione assomiglia a questo:

$ AWS DynamoDB Scan \
--Raccolta musicale da tavolo \
--indice-nome dateleased \
$ Locale

C. Proiezioni di attributo

Le proiezioni sono serie di attributi che vengono copiati dalle tabelle in indici secondari. Di solito, le chiavi di partizione, le chiavi di ordinamento e vari altri attributi sono tra i più proiettati in indici per supportare i requisiti di query delle applicazioni.

La query di un indice consente a Amazondb di accedere a eventuali attributi nella proiezione come se non accede agli attributi che si trovano nelle loro tabelle indipendenti. Assicurati di specificare gli attributi che verranno proiettati nel tuo indice. Le tre opzioni fornite da DynamoDB includono quanto segue:

  • Keys_only- Questo è costituito dai più piccoli indici secondari possibili, con ciascun elemento nell'indice contenente solo i valori della chiave di ordinamento e della partizione della tabella e dei valori della chiave indice.
  • Include- Questa opzione ha tutti gli attributi nella categoria keys_only e qualsiasi altro attributo non chiave che si specifica.
  • All- Questa opzione ha tutti gli attributi dalla tabella di origine.

Conclusione

Questo ci porta alla fine di questo tutorial. Troverai il DynamoDB abbastanza utile per qualsiasi sviluppatore dedicato dalla spiegazione. Prenditi il ​​tuo tempo e impara a creare e utilizzare le tabelle secondarie globali DynamoDB.