Vantaggi dell'utilizzo di Amazon EMR - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Vantaggi dell'utilizzo di Amazon EMR

L'uso di Amazon EMR offre molti vantaggi. Questi includono la flessibilità offerta AWS e i risparmi sui costi disponibili rispetto alla creazione di risorse locali proprie. Questa sezione ne presenta una panoramica e fornisce link a ulteriori informazioni per approfondire l'argomento.

Risparmio sui costi

I prezzi di Amazon EMR dipendono dal tipo e dal numero di EC2 istanze Amazon che distribuisci e dalla regione in cui avvii il cluster. I prezzi su richiesta offrono tariffe basse, ma è possibile ridurre ulteriormente i costi acquistando Istanze riservate o Istanze spot. In alcuni casi, le Istanze spot possono offrire risparmi significativi fino a un decimo dei prezzi su richiesta.

Nota

Se utilizzi Amazon S3, Amazon Kinesis o DynamoDB con il cluster EMR, sono previsti costi aggiuntivi che vengono fatturati separatamente rispetto all'utilizzo di Amazon EMR.

Nota

Quando si configura un cluster Amazon EMR in una sottorete privata, si consiglia di configurare anche gli endpoint VPC per Simple Storage Service (Amazon S3). Se il cluster EMR si trova in una sottorete privata senza endpoint VPC per Simple Storage Service (Amazon S3), verranno addebitati costi aggiuntivi del gateway NAT associati al traffico S3 perché il traffico tra il cluster EMR e S3 non rimarrà all'interno del VPC.

Per ulteriori informazioni su opzioni di prezzo e dettagli, consulta Prezzi di Amazon EMR.

AWS integrazione

Amazon EMR si integra con altri AWS servizi per fornire capacità e funzionalità relative al networking, allo storage, alla sicurezza e così via per il tuo cluster. Di seguito sono elencati diversi esempi di questa integrazione:

  • Amazon EC2 per le istanze che comprendono i nodi del cluster

  • Amazon Virtual Private Cloud (Amazon VPC) per configurare la rete virtuale in cui è possibile avviare le istanze

  • Amazon S3 per archiviare i dati di input e output

  • Amazon CloudWatch per monitorare le prestazioni dei cluster e configurare gli allarmi

  • AWS Identity and Access Management (IAM) per configurare le autorizzazioni

  • AWS CloudTrail per controllare le richieste fatte al servizio

  • AWS Data Pipeline per pianificare e avviare i cluster

  • AWS Lake Formation per scoprire, catalogare e proteggere i dati in un data lake Amazon S3

Implementazione

Il cluster EMR è composto da EC2 istanze che eseguono il lavoro che invii al cluster. Quando si avvia il cluster, Amazon EMR configura le istanze con le applicazioni scelte, ad esempio Apache Hadoop o Spark. Scegli la dimensione e il tipo di istanza più adatti alle esigenze di elaborazione del cluster: elaborazione in batch, query a bassa latenza, streaming di dati o archiviazione di grandi quantità di dati. Per ulteriori informazioni sui tipi di istanza disponibili per Amazon EMR, consulta Configurazione dell'hardware e della rete del cluster Amazon EMR.

Amazon EMR offre svariati modi per configurare software sul cluster. Ad esempio, è possibile installare una versione di Amazon EMR con un set scelto di applicazioni che possono includere framework versatili, come Hadoop, e applicazioni come Hive, Pig o Spark. È anche possibile installare una delle diverse distribuzioni di MapR. Amazon EMR usa Amazon Linux, che ti consente di installare il software sul tuo cluster manualmente sfruttando il gestore dei pacchetti yum o direttamente dalla fonte. Per ulteriori informazioni, consulta Configura le applicazioni all'avvio del cluster Amazon EMR.

Scalabilità e flessibilità

Amazon EMR fornisce flessibilità per ridurre o aumentare le dimensioni del cluster al variare delle esigenze di computing. È possibile ridimensionare il cluster per aggiungere istanze per i carichi di lavoro di picco e rimuovere le istanze per controllare i costi quando tali carichi di lavoro si riducono. Per ulteriori informazioni, consulta Ridimensiona manualmente un cluster Amazon EMR in esecuzione.

Amazon EMR fornisce anche la possibilità di eseguire più gruppi di istanze in modo da poter utilizzare le Istanze on demand in un gruppo per garantire la potenza di elaborazione insieme alle Istanze spot in un altro gruppo e completare i processi più velocemente e a costi inferiori. È anche possibile mescolare diversi tipi di istanza per sfruttare i prezzi migliori per un tipo di Istanza spot rispetto a un'altra. Per ulteriori informazioni, consulta Quando occorre utilizzare le istanze Spot?.

Inoltre, Amazon EMR offre la flessibilità di utilizzare diversi file system per i dati di input, output e intermedi. Ad esempio, puoi scegliere il File system distribuito Hadoop (HDFS) che viene eseguito sui nodi primario e principali del cluster per elaborare i dati che devi archiviare oltre il ciclo di vita del cluster. È possibile scegliere il File system EMR (EMR File System, EMRFS) per utilizzare Amazon S3 come livello di dati per le applicazioni in esecuzione sul cluster in modo da poter separare il calcolo e l'archiviazione e mantenere i dati al di fuori del ciclo di vita del cluster. Come ulteriore vantaggio, EMRFS offre la possibilità di ridurre o aumentare le dimensioni per le esigenze di calcolo e archiviazione in modo indipendente. È possibile scalare le esigenze di calcolo ridimensionando il cluster e le esigenze di archiviazione con Amazon S3. Per ulteriori informazioni, consulta Utilizzo di sistemi di storage e file con Amazon EMR.

Affidabilità

Amazon EMR monitora i nodi del cluster e termina e sostituisce in automatico un'istanza in caso di esito negativo.

Amazon EMR fornisce opzioni di configurazione che controllano la modalità di terminazione del cluster (automatica o manuale). Se configuri la terminazione automatica del cluster, questa viene terminata una volta completate tutte le fasi. Si tratta di un cluster transitorio. Tuttavia, è possibile configurare il cluster in modo che continui a funzionare anche dopo il completamento dell'elaborazione, in modo da poter scegliere di terminarlo manualmente quando non è più necessario. In alternativa, è possibile creare un cluster, interagire direttamente con le applicazioni installate e quindi terminare manualmente il cluster quando non è più necessario. I cluster in questi esempi vengono definiti cluster di lunga durata.

Inoltre, è possibile configurare la protezione di terminazione per evitare che le istanze principali del cluster vengano terminate a causa di errori o problemi durante l'elaborazione. Quando la protezione di terminazione è abilitata, è possibile ripristinare i dati dalle istanze prima della terminazione. Le impostazioni predefinite di queste opzioni differiscono a seconda che si avvii il cluster utilizzando la console, la CLI o l'API. Per ulteriori informazioni, consulta Utilizzo della protezione dalle terminazioni per proteggere i cluster Amazon EMR da arresti accidentali.

Sicurezza

Amazon EMR sfrutta altri AWS servizi, come IAM e Amazon VPC, e funzionalità come le coppie di EC2 chiavi Amazon, per aiutarti a proteggere cluster e dati.

IAM

Amazon EMR si integra con IAM per gestire le autorizzazioni. L'utente definisce le autorizzazioni utilizzando policy IAM da collegare a utenti o gruppi IAM. Le autorizzazioni definite nella policy determinano le azioni che gli utenti o i membri del gruppo possono eseguire e le risorse a cui possono accedere. Per ulteriori informazioni, consulta Funzionamento di Amazon EMR con IAM.

Inoltre, Amazon EMR utilizza i ruoli IAM per il servizio Amazon EMR stesso e il profilo dell'istanza per le EC2 istanze. Questi ruoli concedono al servizio e alle istanze le autorizzazioni per accedere ad altri AWS servizi per tuo conto. Esiste un ruolo predefinito per il servizio Amazon EMR e un ruolo predefinito per il profilo dell' EC2istanza. I ruoli predefiniti utilizzano policy AWS gestite, che vengono create automaticamente la prima volta che si avvia un cluster EMR dalla console e si scelgono le autorizzazioni predefinite. È anche possibile creare i ruoli IAM predefiniti dalla AWS CLI. Se invece desideri gestire le autorizzazioni AWS, puoi scegliere ruoli personalizzati per il servizio e il profilo dell'istanza. Per ulteriori informazioni, consulta Configurazione dei ruoli di servizio IAM per le autorizzazioni di Amazon EMR per i servizi e risorse AWS.

Gruppi di sicurezza

Amazon EMR utilizza gruppi di sicurezza per controllare il traffico in entrata e in uscita verso le tue istanze. EC2 Quando avvii il cluster, Amazon EMR utilizza un gruppo di sicurezza per l'istanza principale e un gruppo di sicurezza condiviso dalle core/task instances. Amazon EMR configures the security group rules to ensure communication among the instances in the cluster. Optionally, you can configure additional security groups and assign them to your primary and core/task istanze per regole più avanzate. Per ulteriori informazioni, consulta Controlla il traffico di rete con gruppi di sicurezza per il tuo cluster Amazon EMR.

Crittografia

Amazon EMR supporta la crittografia lato server e lato client Amazon S3 facoltativa con EMRFS per proteggere i dati archiviati in Amazon S3. Con la crittografia lato server, Amazon S3 crittografa i dati dopo il caricamento.

Con la crittografia lato client, i processi di crittografia e decrittografia avvengono nel client EMRFS sul tuo cluster EMR. Puoi gestire la chiave principale per la crittografia lato client utilizzando il AWS Key Management Service (AWS KMS) o il tuo sistema di gestione delle chiavi.

Per ulteriori informazioni, consulta Configurazione della crittografia Amazon S3 con le proprietà EMRFS.

Amazon VPC

Amazon EMR supporta l'avvio di cluster in un cloud privato virtuale (Virtual Private Cloud, VPC) in Amazon VPC. Un VPC è una rete virtuale isolata AWS che offre la possibilità di controllare aspetti avanzati della configurazione e dell'accesso alla rete. Per ulteriori informazioni, consulta Configurazione della rete in un VPC per Amazon EMR.

AWS CloudTrail

Amazon EMR si integra con CloudTrail la registrazione delle informazioni sulle richieste effettuate da o per conto del tuo account. AWS Con queste informazioni, puoi tenere traccia di chi e quando sta accedendo al cluster e dell'indirizzo IP da cui è stata effettuata la richiesta. Per ulteriori informazioni, consulta Registrazione delle chiamate AWS API EMR utilizzando AWS CloudTrail.

Coppie di EC2 chiavi Amazon

È possibile monitorare e interagire con il cluster creando una connessione sicura tra il computer remoto e il nodo primario. Per questa connessione dovrai utilizzare il protocollo di rete Secure Shell (SSH) oppure Kerberos per l'autenticazione. Se usi SSH, è necessaria una coppia di EC2 chiavi Amazon. Per ulteriori informazioni, consulta Usa una coppia di EC2 chiavi per le credenziali SSH per Amazon EMR.

Monitoraggio

Puoi utilizzare le interfacce di gestione e i file di log di Amazon EMR per risolvere problemi del cluster, come esiti negativi o errori. Amazon EMR consente di archiviare i file di log in Amazon S3 in modo da poter archiviare i log e risolvere eventuali problemi anche dopo la terminazione del cluster. Amazon EMR fornisce anche uno strumento opzionale per il debug nella console Amazon EMR per sfogliare i file di log in base a fasi, processi e attività. Per ulteriori informazioni, consulta Configurazione del logging e del debug dei cluster Amazon EMR.

Amazon EMR si integra con CloudWatch per tracciare i parametri delle prestazioni per il cluster e i lavori all'interno del cluster. Puoi configurare gli allarmi in base a diversi parametri, ad esempio se il cluster è inattivo o la percentuale di spazio di archiviazione utilizzata. Per ulteriori informazioni, consulta Monitoraggio dei parametri di Amazon EMR con CloudWatch.

Interfacce di gestione

Esistono vari modi per interagire con Amazon EMR:

  • Console: un'interfaccia utente grafica che consente di avviare e gestire i cluster. Attraverso la console si compilano i moduli Web per specificare i dettagli dei cluster da avviare, visualizzare i dettagli dei cluster esistenti, eseguire il debug e terminare i cluster. L'uso della console è il modo più semplice per iniziare a familiarizzare con Amazon EMR: infatti, non richiede competenze in termini di programmazione. La console è disponibile online a casa. https://console.aws.amazon.com/elasticmapreduce/

  • AWS Command Line Interface (AWS CLI) — Un'applicazione client che esegui sul tuo computer locale per connetterti ad Amazon EMR e creare e gestire cluster. AWS CLI Contiene un set di comandi ricco di funzionalità specifici per Amazon EMR. Consente di scrivere script che automatizzano il processo di avvio e gestione dei cluster. Se preferisci lavorare da una riga di comando, usare la AWS CLI è l'opzione migliore. Per ulteriori informazioni, consulta Amazon EMR nella Guida di riferimento ai comandi della AWS CLI .

  • Software Development Kit (SDK): SDKs fornisce funzioni che richiamano Amazon EMR per creare e gestire cluster. Permettono di scrivere applicazioni che automatizzano il processo di creazione e gestione dei cluster. Utilizzare gli SDK è l'opzione migliore per ampliare o personalizzare la funzionalità di Amazon EMR. Amazon EMR è attualmente disponibile nei seguenti formatiSDKs: Go, Java, .NET (C# e VB.NET), Node.js, PHP, Python e Ruby. Per ulteriori informazioni su questi argomenti SDKs, consulta Tools for AWS e librerie di esempio per codice e librerie di Amazon EMR.

  • Web Service API: un'interfaccia di basso livello che è possibile utilizzare per chiamare il servizio Web direttamente, utilizzando JSON. Utilizzare l'API è l'opzione migliore per creare un SDK personalizzato che invochi Amazon EMR. Per ulteriori informazioni, consulta la Guida di riferimento alle API di Amazon EMR.