Apache Hadoop: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
m Bot: fix sezioni standard |
||
Riga 31:
=== Applicazioni e librerie usate nei cluster Hadoop ===
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 [https://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 37:
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. Col tempo, Apache Spark si è evoluto, aggiungendo il supporto ad un linguaggio simile ad SQL e la possibilità di eseguire elaborazioni streaming di tipo microbatch.
Per l'elaborazione di dati in modalità streaming con bassa latenza è possibile usare:
Riga 50:
Sono strati creati anche degli strumenti che permettono di definire i flussi di elaborazione dati attraverso dei diagrammi. Tra questi troviamo [https://nifi.apache.org/ Apache NiFi] e [https://streamsets.com/opensource StreamSets Data Collector].
* [[Apache Hive]], che viene usato per interrogare il contenuto di HDFS usando un linguaggio molto simile all'SQL che si chiama Hive Query Language;
* [https://impala.apache.org/ Apache Impala], simile a Hive, ma avente una latenza inferiore a fronte di un throughput inferiore. A questo software mancano le funzionalità più avanzate di Hive, ad esempio la gestione degli indici e dei dati di dato più complessi. Usa Impala Query Language;
Riga 58:
* [[Sqoop]], strumento da linea di comando che permette di importare dati da basi dati relazionali verso HDFS e vice versa;
* [[Apache Flume]], un servizio distribuito affidabile e disponibile per la raccolta, l'aggregazione e il trasporto un grande quantitativo di dati di log in maniera efficiente.
* [https://ambari.apache.org/ Apache Ambari], che aiuta ad amministrare un cluster Hadoop con maggiore semplicità;
* [http://gethue.com/ Hue], una interfaccia grafica che permette di avere un punto di ingresso unico a tutti gli strumenti web per Hadoop;
* [[HBase]], una base dati distribuita che usa HDFS per gestire i dati
* [[Apache Cassandra]]
* [https://kudu.apache.org/ Apache Kudu]
* [[Apache ZooKeeper]], un servizio di configurazione e sincronizzazione distribuito,
Riga 80:
* [https://e.huawei.com/ae/solutions/cloud-computing/big-data Huawei FusionInsight] una distribuzione commerciale.
==
<references/>
|