Panoramica del laboratorio
AnyCompany sta sviluppando una nuova applicazione di database di film. L’applicazione consentirà agli utenti di cercare film per titolo, anno in cui sono usciti, attori, valutazione e così via. AnyCompany ha scelto Amazon DynamoDB come servizio di database per memorizzare le informazioni su tutti i film a cui l’applicazione farà riferimento.
Amazon DynamoDB è un database NoSQL senza server, noto anche come database non relazionale, che supporta modelli di dati chiave-valore e documenti. Con DynamoDB puoi iniziare in piccolo e scalare rapidamente a livello globale man mano che l’applicazione e la tua base di utenti crescono, con la possibilità di supportare petabytes di dati e decine di milioni di richieste di lettura e scrittura al secondo. AWS gestisce il servizio DynamoDB, quindi non ci sono server da aggiornare o mantenere. Per ulteriori informazioni, consulta Amazon DynamoDB Features e Core Components di Amazon DynamoDB nella sezione Risorse aggiuntive.
In qualità di ingegnere di database junior appena assunto, hai il compito di creare gli LSI (Local Secondary Indexes, indici secondari locali) e/o i GSI (Global Secondary Indexes, indici secondari globali) appropriati per migliorare la funzionalità di ricerca dell’applicazione. Per questo laboratorio, lavorerai con un database di esempio chiamato film. Ricorda che le tabelle DynamoDB sono estremamente flessibili e non hanno uno schema tradizionale come i database relazionali. Questa tabella dei film ha una chiave di partizione (HASH) “anno” (Numero) e una chiave di ordinamento (RANGE) “titolo” (Stringa). L’elenco completo degli attributi che popolano il database per questo laboratorio corrisponde alle seguenti caratteristiche:
- anno – Numero (partizione o chiave HASH)
- titolo – Stringa (tasto Ordina o RANGE)
- actors – Stringa
- directors – Stringa
- genre – Stringa
- image_url – Stringa
- plot – Stringa
- rank – Numero
- rating – Numero
- release date – Stringa
- running_time_secs – Numero
Nota che i dati per gli attributi degli attori e dei registi sono stati formattati in modo da essere leggibili come dizionari Python e quindi rappresentano più di un performer. Ad esempio, l’attributo attori per un determinato elemento è una stringa del tipo [{“S”: “John Doe”}, {“S”: “Jane Doe”}].
Argomenti trattati
Alla fine di questo laboratorio sarai in grado di:
- Utilizzare l’SDK per creare indici secondari locali (LSI) e indici secondari globali (GSI)
- Utilizzare l’SDK per scansionare i dati e restituire i risultati filtrati
- Utilizzare l’SDK per eseguire query avanzate per recuperare i dati, rilevando le differenze di prestazioni tra i vari metodi
Competenze tecniche preliminari
Per completare con successo questo laboratorio è necessario avere familiarità con la navigazione di base della Console di gestione AWS, i concetti del database NoSQL, il linguaggio di programmazione Python e sapere modificare facilmente gli script utilizzando un editor di testo.
Tasto icona
In questo laboratorio vengono utilizzate varie icone per richiamare l’attenzione su alcuni aspetti della guida. Nell’elenco seguente viene illustrato lo scopo di ciascuna icona:
- L’icona della tastiera specifica che è necessario eseguire un comando.
- L’icona degli appunti indica che è possibile verificare l’output di un comando o di un file modificato confrontandolo con l’esempio fornito.
- L’icona nota rappresenta suggerimenti, indicazioni o consigli importanti.
- L’icona circolare “i” indica dove trovare ulteriori informazioni.
- L’icona della persona con un segno di spunta indica la possibilità di verificare le tue conoscenze e testare ciò che hai appreso.