Apache Hadoop: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Vitalij zad (discussione | contributi)
Aggiungo altre applicazioni spesso usate nel mondo Hadoop
Vitalij zad (discussione | contributi)
Altri strumenti e formati più usati per files su HDFS
Riga 6:
|Licenza = [[Apache License]] 2.0
}}
'''Apache Hadoop''' è un [[framework]] sotto una [[licenza libera]] che supporta applicazioni distribuite con elevato accesso ai dati, permettendo alle applicazioni di lavorare con migliaia di nodi e [[petabyte]] di dati. Ispirato dalla [[MapReduce]] di [[Google]] e dal [[Google File System]], è un progetto [[Apache]] di alto livello costruito e usato da una comunità globale di contributori, che usano ili linguaggiolinguaggi di programmazione [[Java (linguaggio di programmazione)|Java]] e, per gli strumenti più recenti, [[Scala (linguaggio di programmazione)|Scala]].
 
[[Yahoo!]] è il più grande contributore a questo progetto, e ne fa fortemente uso. È usato anche da: [[AOL]], [[Ebay]], [[Facebook]], [[IBM]], [[ImageShack]], [[Joost]], [[Linkedin]], [[Spotify]], [[The New York Times]] e [[Twitter]].
Riga 22:
L<nowiki>'</nowiki>'''Hadoop Distributed File System''' (in sigla '''HDFS''') è un file system distribuito, [[Portabilità|portabile]] e [[Scalabilità|scalabile]] scritto in Java per il framework Hadoop.
Un cluster in Hadoop tipicamente possiede uno o più name node (su cui risiedono i metadati dei file) e un insieme di data node (su cui risiedono, in blocchi di dimensione fissa, i file dell'HDFS).
I formati più usati per i file su HDFS sono [[Comma-separated values]], [https://avro.apache.org/ Apache Avro], [https://orc.apache.org/ Apache ORC] e [http://parquet.apache.org/ Apache Parquet].
 
Hadoop supporta anche:
Line 29 ⟶ 30:
Hadoop può lavorare direttamente con qualsiasi file system distribuito che possa essere montato da un [[sistema operativo]] sottostante semplicemente usando un URL del tipo 'file://'.
 
=== Applicazioni e librerie usate nei cluster Hadoop ===
Tra le applicazioni e librerie usate più spesso in un cluster Hadoop, troviamo:
 
'''MotoriElaborazione di esecuzionedati'''
* [[Apache Spark]], il motore di elaborazione che, nella maggior parte dei casi, è nettamente più veloce di MapReduce;
* [https://flink.apache.org/ Apache Flink], un motore di elaborazione molto efficace per elaborazioni di tipo streaming;
* [https://akka.io/ Akka], una libreria che implementa l'Actor Model;
* [https://www.cascading.org/ Cascading], un insieme di librerie per sviluppare programmi MapReduce;
* [http://crunch.apache.org/ Apache Crunch], una libreria per sviluppare programmi MapReduce;
* [[Pig (programma)]], una piattaforma di alto livello per creare programmi MapReduce;
'''Strumenti per l'immagazzinamento dei dati'''
* [[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], molto simile a Hive, ma piùavente veloceuna latenza inferiore a fronte di un throughput inferiore. Usa Impala Query Language;
* [http://prestodb.github.io/ Presto] uno strumento per interrogare dati su HDFS simile ad Hive ed Impala, sviluppato da Facebook;
* [[Apache Kafka]] che viene usato per trasmettere dei messaggi e per custodire nel tempo i messaggi che sono stati trasmessi;
 
* [[Sqoop]], strumento da linea di comando che permette di importare dati da basi dati relazionali verso HDFS e vice versa;
'''Console web'''