Video: GDG DevFest Med 2016 - Dario catalano "Ecosistema Apache Hadoop: Architettura, API" 2025
"Semplice" spesso significa "elegante" quando si tratta di quei disegni architettonici per nuova villa della Silicon Valley che hai pianificato quando il denaro inizia a rotolare dopo aver implementato Hadoop. Lo stesso principio vale per l'architettura del software. Pig è costituito da due componenti (count 'em, two):
-
Il linguaggio stesso: A dimostrazione che i programmatori hanno il senso dell'umorismo, il linguaggio di programmazione per Pig è noto come Pig Latin, un livello elevato linguaggio che consente di scrivere programmi di elaborazione e analisi dei dati.
-
Il compilatore Pig Latin: Il compilatore Pig Latin converte il codice Pig Latin in codice eseguibile. Il codice eseguibile è in forma di lavori MapReduce o può generare un processo in cui viene creata un'istanza Hadoop virtuale per eseguire il codice Pig su un singolo nodo.
La sequenza di programmi MapReduce consente ai programmi Pig di eseguire l'analisi e l'analisi dei dati in parallelo, sfruttando Hadoop MapReduce e HDFS. L'esecuzione del lavoro Pig nell'istanza Hadoop virtuale è una strategia utile per testare gli script Pig.
La figura mostra come Pig si relaziona con l'ecosistema Hadoop.
I programmi Pig possono essere eseguiti su MapReduce v1 o MapReduce v2 senza modifiche al codice, indipendentemente dalla modalità di esecuzione del cluster. Tuttavia, gli script Pig possono anche essere eseguiti utilizzando l'API Tez. Apache Tez fornisce un framework di esecuzione più efficiente rispetto a MapReduce. YARN consente l'esecuzione su Hadoop di framework applicativi diversi da MapReduce (come Tez). Hive può anche funzionare contro il framework di Tez.
