Apache Hadoop: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Vitalij zad (discussione | contributi)
m Aggiungo un altro libro relativo ad SQl su hadoop
Vitalij zad (discussione | contributi)
Elaborazione in modalità streaming, architettura lambda e kappa
Riga 33:
Tra le applicazioni e librerie usate più spesso in un cluster Hadoop, troviamo:
 
'''Elaborazione dati in modalità batch'''
 
Quando nacque Hadoop, l'unico modo di realizzare applicativi di elaborazione dati era MapReduce, che richiede di scrivere molto codice Java anche per le attività più semplici. Col passare degli anni, vennero inventate librerie come [https://www.cascading.org/ Cascading] e [http://crunch.apache.org/ Apache Crunch] per rendere più agevole la realizzazione di questi programmi. A questi si è affiancato [[Pig (programma)|Pig]], uno strumento che permetteva di usare un linguaggio ispirato ad SQL.
Riga 39:
Un cambiamento consistente è avvenuto con l'introduzione di [[Apache Spark]] che usa in modo aggressivo la memoria RAM dei nodi del cluster per eseguire le elaborazioni con una velocità nettamente superiore a quella di MapReduce.
 
'''Elaborazione dati in modalità Streaming'''
Successivamente è stato introdotto [https://flink.apache.org/ Apache Flink] per l'elaborazione di dati in modalità streaming con bassa latenza.
 
Per l'elaborazione di dati in modalità streaming con bassa latenza è possibile usare:
 
* [https://apex.apache.org/ Apache Apex]
* [https://flink.apache.org/ Apache Flink]
* [https://apache.github.io/incubator-heron/ Apache Heron]
* [https://samza.apache.org/ Apache Samza]
* [https://gearpump.github.io/gearpump/ Gearpump]
 
Una libreria degna di nota è [https://akka.io/ Akka]. Questa permette di elaborare dati con delle prestazioni molto elevate sfruttando l'Actor Model. Le prime versioni di Apache Spark, precedenti alla 1.6, erano costruite proprio su Akka.
Line 62 ⟶ 70:
'''Altri strumenti'''
* [[Apache ZooKeeper]], un servizio di configurazione e sincronizzazione distribuito,
 
== Architetture dei sistemi basati su Hadoop ==
Usando Hadoop è possibile realizzare architetture di tipo Lambda, descritte da Nathan Marz e James Warren. Questo tipo di architettura prevede dei flussi batch e dei flussi streaming in parallelo.
 
== Distribuzioni di Hadoop ==
Sebbene sia possibile scaricare ed installare autonomamente tutti i software necessari per far funzionare un cluster Hadoop, in molti casi è preferibile usare una distribuzione nella quale sono già presenti ed installati tutti questi software. Il limite di questo approccio è che bisogna scrivere il doppio del codice. Per provare a superare questo limite, è stata proposta l'architettura Kappa, nella quale viene fatto tutto in streaming.
 
Tra le distribuzioni più note troviamo:
Line 72 ⟶ 83:
 
== Bibliografia ==
* {{cita web|url=https://www.oreilly.com/ideas/questioning-the-lambda-architecture|titolo=Questioning the Lambda Architecture | autore=Jay Kreps |lingua=en|accesso=9 aprile 2019}}
* {{cita libro | nome=Tom | cognome=White | titolo=Hadoop: The Definitive Guide, 4th Edition | anno=2015 | editore=O'Reilly | città= | url=http://shop.oreilly.com/product/0636920033448.do | lingua=en}}
* {{cita libro| nome=Nathan | cognome=Marz | nome2=James | cognome2=Warren | titolo= Big Data. Principles and best practices of scalable realtime data systems | anno=2015 | editore=Manning | città | url=https://www.manning.com/books/big-data | lingua=en }}
* {{cita libro | nome=Tom | cognome=White | titolo=Hadoop: The Definitive Guide, 4th Edition | anno=2015 | editore=O'Reilly | città= | url=http://shop.oreilly.com/product/0636920033448.do | lingua=en}}
* {{cita libro | nome=Sam R. | cognome=Alapati | titolo=Expert Hadoop® Administration | anno=2016 | editore= Addison-Wesley | città= | url=https://www.pearson.com/us/higher-education/program/Alapati-Expert-Hadoop-Administration-Managing-Tuning-and-Securing-Spark-YARN-and-HDFS/PGM1102284.html | lingua=en }}
* {{cita libro | nome=Sumit | cognome=Pal | titolo=SQL on Big Data | anno=2016 | editore=Apress | città= | url=https://www.apress.com/gp/book/9781484222461 | lingua=en }}