Skip to content

Latest commit

 

History

History
74 lines (48 loc) · 4.06 KB

README-IT.md

File metadata and controls

74 lines (48 loc) · 4.06 KB

Architettura di riferimento senza server: elaborazione dei flussi in tempo reale

È possibile utilizzare AWS Lambda e Amazon Kinesis per elaborare i flussi di dati in tempo reale per monitorare l'attività dell'applicazione, elaborare l'ordine delle transazioni, analizzare il flusso dei clic, eliminare i dati, generare parametri, filtrare i registri, indicizzare, analizzare i social media ed eseguire misurazione e telemetria dei dati dei dispositivi di IoT. Questa architettura, descritta in questo diagramma, può essere creata con un modello di AWS CloudFormation.

Il modello svolge le operazioni seguenti:

  • Creazione di un flusso Kinesis

  • Creazione di una tabella di DynamoDB nominata <stackname>-EventData

  • Creazione della funzione 1 di Lambda (<stackname>-DDBEventProcessor) che riceve i record da Kinesis e scrive i record nella tabella di DynamoDB

  • Creazione di un ruolo e di una policy IAM per consentire alla funzione di Lambda di elaborazione degli eventi di leggere dal flusso Kinesis e di scrivere nella tabella di DynamoDB

  • Creazione di un utente IAM con autorizzazione a inserire eventi nel flusso Kinesis e credenziali che l'utente può utilizzare in un client API

Istruzioni

Passaggio 1: creare uno stack di AWS CloudFormation con il modello. Il modello di AWS CloudFormation automatizza completamente la creazione, la distribuzione e la configurazione di tutti i componenti dell'applicazione.

Launch Real-time Stream Processing into North Virginia with CloudFormation

Passaggio 2: una volta creato lo stack di AWS CloudFormation, è possibile selezionare la scheda Outputs e visualizzare i parametri di AWS necessari nel client Twitter dimostrativo nei passaggi seguenti.

Passaggio 3: per eseguire l'applicazione esempio, è necessario aggiornare il codice con le informazioni di AWS e Twitter. Aprire producer/twitter2kinesis.py in un editor di testo.

Passaggio 4: per accedere all'API di Twitter, è necessario disporre dei token di accesso. Accertarsi di esserne in possesso e inserire le informazioni nei parametri seguenti:

Parametri dell'API di Twitter

consumer_key = ""
consumer_secret = ""
access_token_key = ""
access_token_secret = ""

Passaggio 5: inserire i valori per le credenziali di AWS e il nome del flusso di Amazon Kinesis. Queste sono le informazioni della scheda Outputs del modello di CloudFormation ottenute nel passaggio 2:

Parametri di AWS: dalla scheda Outputs del modello di CloudFormation

access_key = ""
secret_access_key = ""
region = ""
stream_name = ""

Passaggio 6: infine, prima di eseguire il codice esempio, è necessario installare Python con i moduli Python boto3 e TwitterAPI. Se non si dispone già dei moduli, installarli utilizzando pip:

pip install boto3 TwitterAPI

Test

Client and Stream Processor Diagram

Passaggio 1: eseguire l'applicazione Python producer/twitter2kinesis.py dalla riga di comando per iniziare a inviare Tweet nel flusso Kinesis.

python twitter2kinesis.py

Passaggio 2: nella console di gestione di Amazon DynamoDB, selezionare la tabella nominata <stackname>-EventData ed esaminare i record.

Eliminazione

Per eliminare tutte le risorse create, eliminare lo stack di AWS CloudFormation.