Concetti comuni per le chiamate API - 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à.

Concetti comuni per le chiamate API

Quando scrivi un'applicazione che chiama l'API di Amazon EMR, ci sono diversi concetti da tenere a mente quando si chiama una delle funzioni wrapper di un SDK.

Endpoint per Amazon EMR

Un endpoint è un URL che rappresenta il punto di partenza per un servizio Web. Ogni richiesta di servizio Web deve contenere un endpoint. L'endpoint specifica la AWS regione in cui i cluster vengono creati, descritti o terminati. Il suo formato è elasticmapreduce.regionname.amazonaws.com. Se specifichi l'endpoint generale (elasticmapreduce.amazonaws.com), la richiesta viene indirizzata da Amazon EMR a un endpoint nella regione predefinita. Per account creati a partire dall'8 marzo 2013, la regione predefinita è us-west-2; per i vecchi account, la regione predefinita è us-east-1.

Per ulteriori informazioni sugli endpoint per Amazon EMR, consulta la sezione Regioni ed endpoint in Riferimenti generali di Amazon Web Services.

Specifica dei parametri del cluster in Amazon EMR

I parametri Instances consentono di configurare il tipo e il numero di istanze EC2 per creare nodi per elaborare i dati. Hadoop distribuisce l'elaborazione dei dati su più nodi del cluster. Il nodo master serve a monitorare l'integrità dei nodi principali e di task ed esegue il polling dei nodi per lo stato del risultato del processo. I nodi principali e di task eseguono l'elaborazione effettiva dei dati. Se si dispone di un cluster a nodo singolo, il nodo svolge la funzione di nodo master e principale.

Il parametro KeepJobAlive in una richiesta RunJobFlow determina se terminare il cluster quando esaurisce le fasi del cluster da eseguire. Impostare questo valore su False quando l'esecuzione del cluster è quella prevista. Durante la risoluzione dei problemi del flusso di elaborazione e l'aggiunta di fasi mentre l'esecuzione del cluster è sospesa, è opportuno impostare il valore su True. Questo consente di ridurre il tempo e le spese di caricamento dei risultati in Amazon Simple Storage Service (Amazon S3), solo per ripetere il processo dopo la modifica di una fase per riavviare il cluster.

In caso KeepJobAlive true affermativo, dopo aver completato con successo il funzionamento del cluster, è necessario inviare una TerminateJobFlows richiesta o il cluster continuerà a funzionare e generare costi. AWS

Per ulteriori informazioni sui parametri esclusivi diRunJobFlow, consulta RunJobFlow. Per ulteriori informazioni sui parametri generici nella richiesta, consulta la sezione relativa ai Parametri di richiesta comuni.

Zone di disponibilità in Amazon EMR

Amazon EMR usa istanze EC2 come nodi per elaborare cluster. Le ubicazioni di queste istanze EC2 sono composte da zone di disponibilità e Regioni. Le regioni sono disperse e situate in aree geografiche separate. Le zone di disponibilità sono ubicazioni distinte all'interno di una Regione isolata dai guasti che si verificano in altre zone di disponibilità. Ogni zona di disponibilità offe una connettività di rete economica, a bassa latenza ad altre zone di disponibilità nella stessa Regione. Per un elenco delle regioni e degli endpoint per Amazon EMR, consulta la sezione Regioni ed endpoint in Riferimenti generali di Amazon Web Services.

Il parametro AvailabilityZone specifica il percorso generale del cluster. Questo parametro è facoltativo e, in generale, ne sconsigliamo l'utilizzo. Quando AvailabilityZone non è specificato, Amazon EMR sceglie automaticamente il valore AvailabilityZone ottimale per il cluster. Questo parametro può essere utile se desideri co-individuare le tue istanze con altre istanze in esecuzione esistenti e il cluster deve leggere o scrivere dati di tali istanze. Per ulteriori informazioni, consulta la Guida per l'utente di Amazon EC2.

Come utilizzare file e librerie aggiuntivi in cluster Amazon EMR

Talvolta potrebbe essere necessario utilizzare file aggiuntivi o librerie personalizzate con applicazioni mappatore o riduttore. Ad esempio, potrebbe essere necessario utilizzare una libreria che consente di convertire un file PDF in testo normale.

Per memorizzare nella cache un file utilizzato dal mappatore o riduttore durante lo streaming Hadoop
  • Nel campo args JAR, aggiungere il seguente argomento:

    -cacheFile s3://bucket/path_to_executable#local_path

    Il file, local_path, si trova nella directory di lavoro del mappatore, che potrebbe fare riferimento al file.