Come automatizzare il mio script spark di AWS

2

Sono nuovo di AWS e ho imparato e sviluppato codice in spark -scala.

La mia applicazione fonde fondamentalmente due file nella scintilla e crea l'output finale.

Ho letto entrambi i file (file MAIN e INCR) nella scintilla del bucket S3.

Tutti funzionano bene e sto ottenendo anche l'output corretto. Ma non so come automatizzare l'intero processo da mettere in produzione.

Ecco i passi che sto facendo per ottenere l'output.

PASSO 1: Caricamento dei file principali (file di testo 5K). Sto leggendo i file da FTP in EC2 e quindi caricando nel bucket S3.

PASSO 2: Caricamento di INCR (file incrementali) nello stesso modo in cui sto caricando i file MAIN.

PASSAGGIO 3: Creazione manuale del cluster EMR dall'interfaccia utente.

PASSO 4: Apertura dello script di Zeppelin e copia incolla dello script spark-scala ed esecuzione.

PASSO 5: Crea nuovamente un'istanza EC2 per leggere il bucket S3 e inviare file di output da S3 a client FTP.

Sto usando EC2 perché nel mio caso non ho una connessione diretta da S3 a FTP. Siamo in un processo per ottenere DIRECT CONNECT da AWS.

Per favore, aiutami come posso automatizzare nel modo migliore.

    
posta SUDARSHAN 14.01.2018 - 05:10
fonte

1 risposta

1

Hai 2 opzioni. Se si desidera arrestare e avviare il cluster, quindi l'opzione 1, la pipeline di dati AWS è migliore:

1. Pipeline di dati AWS DeveloperGuide: what-is-datapipeline

2.OozieWorkflow

PotrestiusareOozie.EccounesempiodicomeautomatizzareilavoriSparkinAWSconOozie:

link

Se hai già la connessione FTP per il trasferimento dei dati sull'istanza EC2, puoi attivare uno script di shell da Oozie. Ecco un esempio script di shell in esecuzione -con-oozie

    
risposta data 15.01.2018 - 09:23
fonte

Leggi altre domande sui tag