emr amazon

Tra i tanti strumenti offerti da Amazon Web Services non si può non citare Amazon EMR. Si tratta di una risorsa che permette di eseguire rapidamente applicazioni di Big Data e analisi di dati nell’ordine di petabyte, dimezzando i costi rispetto alle soluzioni On-Premise.

Con Amazon EMR puoi costruire applicazioni mediante i più recenti framework open source, che andrai poi a eseguire su cluster Amazon EC2 personalizzati, Amazon EKS, AWS Outposts o Amazon EMR Serverless.

Non solo, potrai raccogliere informazioni dettagliate due volte più velocemente rispetto alle versioni di Spark, Hive e Presto ottimizzate e compatibili con le API open source.

Notebooks e altri strumenti open source in EMR Studio ti permetteranno poi di sviluppare, visualizzare ed eseguire il debug delle tue applicazioni.

 

Come funziona Amazon EMR

Amazon EMR sfrutta algoritmi statistici e modelli predittivi per elaborare dati su larga scala e analisi ipotetiche, allo scopo di individuare sequenze nascoste, correlazioni, tendenze di mercato e preferenze dei clienti. Estrae dati da numerose fonti differenti, li elabora su scala e li rende così disponibili per applicazioni e utenti.

Permette di creare pipeline di dati di streaming in tempo reale attraverso un’analisi degli eventi da origini dati di streaming. In questo modo, si ottiene una pipeline di lunga durata, a elevata disponibilità e con un’alta tolleranza agli errori.

Per analizzare i dati Amazon EMR si serve di framework ML open source, come Apache Spark MLlib, TensorFlow e Apache MXNet.

 

Vantaggi di Amazon EMR

L’utilizzo di Amazon EMR può apportare numerosi vantaggi al tuo business, vediamo nel dettaglio quali.

Risparmio sui costi

Amazon EMR offre costi decisamente competitivi. Di base, il prezzo dipende dal tipo di istanza, dal numero di istanze Amazon EC2 distribuite e dalla Regione in cui si avvia il cluster. Tuttavia, si possono ridurre ulteriormente i costi decidendo di acquistare Istanze riservate o Istanze spot. Queste ultime sono in grado di determinare risparmi fino a un decimo dei prezzi su richiesta.

Integrazione di AWS

Amazon EMR si integra perfettamente con altri servizi AWS per incrementare le capacità e le funzionalità relative a reti, archiviazione, sicurezza e altro ancora, per esempio:

  • Amazon EC2 per le istanze che costituiscono i nodi del cluster;
  • Amazon Virtual Private Cloud (Amazon VPC) per configurare la rete virtuale in cui avviare le istanze;
  • Amazon S3 per archiviare i dati di input e output;
  • Amazon CloudWatch per monitorare le prestazioni del cluster e configurare allarmi;
  • AWS Identity and Access Management (IAM) per configurare le autorizzazioni;
  • AWS CloudTrail per le richieste di audit effettuate al servizio;
  • AWS Data Pipeline per pianificare e avviare i cluster;
  • AWS Lake Formation per individuare, catalogare e proteggere i dati in un data lake Amazon S3.

Distribuzione

Il cluster EMR è formato da istanze EC2 che eseguono il lavoro inviato al cluster. Quando si avvia il cluster, Amazon EMR configura le istanze con le applicazioni prescelte (per esempio Apache Hadoop o Spark).

Si ha la possibilità di scegliere sia la dimensione e il tipo di istanza più adatti alle esigenze di elaborazione del cluster – elaborazione batch, query a bassa latenza, streaming di dati o archiviazione di grandi quantità di dati – sia il modo di configurare software sul cluster.

Scalabilità e flessibilità

Con Amazon EMR sei tu a decidere se dimensionare il cluster verso l’alto o verso il basso, a seconda di come variano le tue esigenze di computing. Puoi ridimensionare il cluster e aggiungere istanze per carichi di lavoro di picco, oppure rimuovere le istanze per controllare i costi quando i carichi di lavoro di picco diminuiscono.

Puoi anche eseguire più gruppi di istanze per ridurre tempi e costi e mescolare diversi tipi di istanza per sfruttare le migliori caratteristiche in termini di prezzi e prestazioni di ciascuna.

Non solo, potrai anche scegliere di usare diversi file system per i dati di input, output e intermedi e, soprattutto, avrai la possibilità di scalare o ridurre autonomamente le esigenze di calcolo e storage.

Affidabilità

Amazon EMR monitora i nodi del cluster e termina e sostituisce automaticamente le istanze in caso di insuccesso.

Sono anche disponibili opzioni di configurazione per controllare la modalità di terminazione del cluster, che può essere automatica o manuale. Se si opta per la terminazione automatica, questa viene terminata alla fine di tutti i passaggi. Si può, però, anche configurare il cluster in modo che continui a funzionare al termine dell’elaborazione, per poi decidere di terminarlo manualmente in un secondo momento, quando non sarà più necessario. O ancora, si può creare un cluster, interagire direttamente con le applicazioni installate e quindi terminarlo manualmente quando non se ne ha più bisogno.

Con Amazon EMR avrai anche la possibilità di configurare la protezione di terminazione per evitare che le istanze principali del cluster terminino a causa di errori o problemi durante l’elaborazione. Quando la protezione di terminazione è abilitata, si possono ripristinare i dati dalle istanze prima che terminino.

Sicurezza

Amazon EMR si integra con altri servizi AWS per proteggere i cluster e i dati:

  • IAM: permette all’utente di definire le autorizzazioni utilizzando policy IAM da collegare a utenti IAM o gruppi IAM. Queste autorizzazioni determinano le azioni che gli utenti o i membri del gruppo possono eseguire e le risorse a cui possono accedere. Con i ruoli IAM è anche possibile concedere delle autorizzazioni per far accedere il servizio e le istanze ad altri servizi AWS per conto dell’utente. I ruoli predefiniti utilizzano policy gestite da AWS, che vengono create automaticamente la prima volta che si avvia un cluster EMR, ma si possono anche creare ruoli personalizzati per il servizio e il profilo dell’istanza.
  • Gruppi di sicurezza: consentono di controllare il traffico in entrata e in uscita verso le istanze EC2 dell’utente. Quando si avvia il cluster, Amazon EMR utilizza un gruppo di sicurezza per l’istanza master e un gruppo di sicurezza condiviso dalle istanze principali/attività. È possibile configurare sia le regole per i gruppi di sicurezza, al fine di garantire la comunicazione tra le istanze del cluster, sia gruppi di sicurezza aggiuntivi da assegnare alle istanze master e core/task per regole più avanzate.
  • Crittografia: Amazon EMR supporta la crittografia opzionale Amazon S3 lato server e lato client con EMRFS per proteggere i dati archiviati in Amazon S3. Con la crittografia lato server i dati vengono crittografati dopo il caricamento, mentre con quella lato client la crittografia e la decrittografia avvengono nel client EMRFS nel cluster EMR.
  • Amazon VPC: è possibile avviare il cluster in un cloud privato virtuale (Virtual Private Cloud, VPC) in Amazon VPC. Un VPC è una rete virtuale isolata in AWS che permette di controllare aspetti avanzati della configurazione di rete e dell’accesso.
  • AWS CloudTrail: consente di registrare le informazioni sulle richieste provenienti da o per conto del tuo account AWS, tracciando così di chi accede al cluster, quando e da quale indirizzo IP viene effettuata la richiesta.
  • Coppia di chiavi Amazon EC2: puoi monitorare e interagire con il cluster creando una connessione sicura tra il computer remoto e il nodo master mediante il protocollo di rete Secure Shell (SSH) – nel qual caso serve una coppia di chiavi Amazon EC – oppure usando Kerberos per l’autenticazione.

Monitoraggio

Puoi usare le interfacce di gestione e i file di log di Amazon EMR per risolvere problemi del cluster, come insuccessi o errori. Amazon EMR permette di archiviare i file di log in Amazon S3 in modo da risolvere eventuali problemi anche dopo la terminazione del cluster.

È anche disponibile uno strumento opzionale per il debug nella console Amazon EMR, che consente di sfogliare i file di log in base a fasi, processi e attività. Non solo, Amazon EMR si integra con CloudWatch per monitorare i parametri delle prestazioni del cluster e i processi all’interno del cluster ed è anche possibile configurare gli allarmi in base a diversi parametri, come ad esempio la percentuale di storage utilizzata.

Interfacce di gestione

Diversi sono i modi a disposizione del cliente per interagire con Amazon EMR:

  • Console: un’interfaccia utente grafica che permette di avviare e gestire i cluster, compilare i moduli web per specificare i dettagli dei cluster da lanciare, visualizzare i dettagli dei cluster esistenti, eseguire il debug e terminare i cluster. Non sono richieste competenze in termini di programmazione.
  • AWS Command Line Interface (AWS CLI): un’applicazione client da eseguire sul computer locale per connettersi ad Amazon EMR e creare e gestire i cluster. Contiene comandi specifici per Amazon EMR con cui scrivere script che automatizzino il processo di avvio e di gestione dei cluster.
  • Software Development Kit (SDK): contiene funzioni che invocano Amazon EMR per creare e gestire i cluster, consentendo di scrivere applicazioni che automatizzino il processo di creazione e gestione dei cluster. Amazon EMR è attualmente disponibile nei seguenti SDK: Go, Java, .NET (C# e VB.NET), Node.js, PHP, Python e Ruby.
  • Web Service API: un’interfaccia di basso livello da utilizzare per chiamare il servizio Web direttamente mediante JSON; l’ideale per creare un SDK personalizzato che invochi Amazon EMR.

 

Contattaci se desideri integrare Amazon EMR

Devi elaborare dati per analisi e carichi di lavoro di business intelligence? In questo caso, Amazon EMR fa senza dubbio al caso tuo. Tuttavia, non sempre si hanno il tempo e le competenze necessarie a integrare questo servizio nella propria azienda, per questo noi di Unidevs mettiamo a tua disposizione i nostri professionisti. Contattaci per maggiori informazioni.

Truccone Davide

Sono Davide Truccone Imprenditore e Project Manager di Unidevs.
La nostra agenzia nasce da un'idea ambiziosa, innovativa, fornire assistenza a 360° gradi alle piccole imprese italiane che hanno bisogno di figure estremamente qualificate.

https://www.unidevs.it/

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.