DynamoDB: prerequisiti e JavaScript SDK v2 v3 – 1
Desidero scrivere un tutorial passo passo su come creare da zero un’Alexa Smart Home Skill. Perciò vado a presentare tutti i prerequisiti e i passaggi per creare una Smart Home Skill collegata al nostro microcontrollore in grado di gestire ogni dispositivo connesso.
Inizierò con un semplice argomento come il database DynamoDB, quindi creeremo una Smart Skill e collegheremo a un server di messaggistica il microcontrollore e quindi uniremo il tutto.
In questo schema puoi controllare la parte che andremo ad analizzare (selezionata in giallo) .
Ogni lambda (vedi lambda come una chiamata REST per ora) quando viene richiamata, potrebbe aver bisogno di salvare alcuni dati, e ora vedremo questa parte.
Ora iniziamo con il nostro DynamoDB.
Amazon DynamoDB è un database che supporta i modelli di dati di tipo documento e di tipo chiave-valore che offre prestazioni di pochi millisecondi a qualsiasi scala. Si tratta di un database durevole, multiregione, multiattivo e completamente gestito che offre sicurezza, backup e ripristino integrati e memorizzazione nella cache in memoria per applicazioni Internet.
Amazon
Prerequisiti
Hai bisogno di un account della console AWS e di un account sviluppatore .
Installazione di AWS CLI per gestire e controllare le modifiche su DynamoDB.
Installa NodeJS per eseguire lo script in locale.
Se vuoi provare a mettere il tuo DynamoDB localmente, installa Docker (o installa DynamoDB manualmente).
Codice e risorse
Prima crea una cartella, per me creo
dynamodb-tutorial-examples-iot
Installa strumenti opzionali
L’utilizzo di questi strumenti è facoltativo in quanto utili, ma non obbligatori.
Git
Git 2.0 o superiore è richiesto solo se si desidera clonare il codice sorgente in locale. Da riga di comando, puoi verificare se git è installato eseguendo il comando:
git --version
Se non è installato correttamente o non è una versione successiva alla 2.0, visita https://git-scm.com/downloads per scaricare e installare una versione per la tua piattaforma.
Ottieni il codice sorgente tramite Git
Se hai git installato sulla tua workstation, puoi usare le seguenti istruzioni per estrarre il codice sorgente nella tua directory di lavoro.
- Dalla riga di comando, accedi alla directory di lavoro sul desktop:
dynamodb-tutorial-examples-iot
- Ed eseguire il comando seguente per estrarre il codice sorgente in una directory di lavoro:
git clone https://github.com/xreef/dynamodb-tutorial-examples-iot.git
Ottieni il codice sorgente tramite Download
Se non hai installato git, scarica e decomprimi il contenuto zippato dell’esempio da
https://github.com/xreef/dynamodb-tutorial-examples-iot/archive/refs/heads/master.zip
into your desktop working directory: dynamodb-tutorial-examples-iot
.
Gestisci il file di setup
Rinomina setup-template.txt
in setup.txt
.
Il file dovrebbe contenere:
[Login with Amazon Client ID]
XXXXX.XXXXXXXXXXX-XXX-XXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[Login with Amazon Client Secret]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[AWS Access Key ID]
XXXXXXXXXXXXXXXXXXXX
[AWS Secret Access Key]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[Region]
XX-XXXX-X
Crea credenziali di sicurezza con chiave di accesso
Per concedere l’accesso dal tuo PC ad AWS DynamoDB devi creare un file Access Key ID
e una Secret Access Key
.
- Vai a Identity and Access Management (IAM) , dal menu Profilo (il tuo login utente) seleziona Le mie credenziali di sicurezza ;
https://console.aws.amazon.com/iam/home#/security_credentials - Fare clic sull’accordion Chiavi di accesso (ID chiave di accesso e chiave di accesso segreta);
- E fai clic sul pulsante Crea nuova chiave di accesso .
- Copia l’
ID della chiave di accesso
e lachiave di accesso segreta
nel file di configurazione nella relativa sezione
[Access Key ID]
XXXXXXXXXXXXXXXXXXXX
[AWS Secret Access Key]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Configura le credenziali per eseguire localmente lo script DynamoDB
- Ora il comando dalla console dei comandi
aws configure
;
$ aws configure
AWS Access Key ID [None]: XXXXXXXXXXXXXXXXXXXX
AWS Secret Access Key [None]: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Default region name [None]: eu-west-1
Default output format [None]: json
- Inserisci il tuo
[AWS Access Key ID]
quindi[AWS Secret Access Key]
presi dal filesetup.txt
; - Inserisci la tua regione (è meglio se selezioni una regione adatta al tuo paese);
- Ora inserisci un formato di output (json per me).
Ora sei connesso al tuo account AWS e puoi avviare direttamente gli scripts per interrogare il database.
Script (JavaScript) V2 e V3
Puoi utilizzare DynamoDB con 2 versioni della libreria. Queste librerie ti consentono di lavorare facilmente con Amazon Web Services, quando scrivo questo articolo la versione v2 è la più utilizzata, la v3 è una riscrittura della v2 con alcune nuove funzionalità come un’architettura modulare con un pacchetto per ogni servizio. Include anche molte funzionalità richieste di frequente, come un supporto TypeScript di prima classe e un nuovo stack middleware.
Vorrei mostrarti il codice v2 e v3 e tu selezionerai la versione che preferisci.
Inizializzazione dell’ambiente
Ora dobbiamo inizializzare l’ambiente per utilizzare gli scripts.
- Installa NodeJS (e npm se necessario).
- Vai alla cartella
dynamodb-tutorial-examples-iot\dynamodb-examples\jsv2
per gli scripts v2 e dynamodb-tutorial-examples-iot\dynamodb-examples\jsv3 per gli scripts v3. - Avvia
npm i
. - In tutti gli scripts js cambia la regione in base alle tue impostazioni (e la posizione del DB se necessario) metti la regione selezionata nel
setup.txt
file.
[Region]
XX-XXXX-X
Troverai la regione sugli script v2 nella sezione AWS.config.update:
AWS.config.update({
apiVersion: '2012-08-10',
region: "eu-west-1",
// endpoint: "http://localhost:8000",
// // accessKeyId default can be used while using the downloadable version of DynamoDB.
// // For security reasons, do not store AWS Credentials in your files. Use Amazon Cognito instead.
// accessKeyId: "9oiaf7",
// // secretAccessKey default can be used while using the downloadable version of DynamoDB.
// // For security reasons, do not store AWS Credentials in your files. Use Amazon Cognito instead.
// secretAccessKey: "yz5i9"
});
Per gli scripts v3 la troverai in un oggetto const.
const configDynamoDB = {
version: 'latest',
region: "eu-west-1",
// endpoint: "http://localhost:8000",
// credentials: {
// // accessKeyId default can be used while using the downloadable version of DynamoDB.
// // For security reasons, do not store AWS Credentials in your files. Use Amazon Cognito instead.
// accessKeyId: "9oiaf7",
// // secretAccessKey default can be used while using the downloadable version of DynamoDB.
// // For security reasons, do not store AWS Credentials in your files. Use Amazon Cognito instead.
// secretAccessKey: "yz5i9"
// }
};
Ora siamo pronti per lanciare gli script.
Differenza di pacchetti JS
La grande differenza rispetto alla v3 è che la v2 ha un unico pacchetto importato
"aws-sdk": "^2.802.0"
v3 abbiamo pacchetti modulari, quindi possiamo andare ad importare solo ciò di cui abbiamo bisogno, e in questo caso importare il client DynamoDB.
"@aws-sdk/client-dynamodb": "^1.0.0-rc.7"
Grazie
Questa era l’introduzione di base all’ambiente di lavoro, nel prossimo articolo ricominceremo da qui per iniziare ad eseguire il codice.
- DynamoDB JavaScript SDK v2 v3: prerequisiti ed introduzione
- DynamoDB JavaScript SDK v2 v3: gestione delle tabelle
- DynamoDB JavaScript SDK v2 v3: aggiungere elementi con DB o DocumentClient
- DynamoDB JavaScript SDK v2 v3: gestione degli elementi
- DynamoDB JavaScript SDK v2 v3: scansionare i dati delle tabelle e paginazione
- DynamoDB JavaScript SDK v2 v3: query