Apache Hadoop

De Viquipèdia
Salta a la navegació Salta a la cerca
Infotaula de programariApache Hadoop
Hadoop logo new.svg
Creador/s Doug Cutting i Mike Cafarella
Desenvolupador(s) Apache Software Foundation
Versió inicial 2005
Versió estable

0.26.0

/ 13 setembre 2017
Escrit en Java
Sistema operatiu multiplataforma i POSIX
Plataforma Màquina Virtual Java
Tipus framework i arquitectura distribuïda
Llicència Llicència Apache, versió 2.0 i GNU GPL
Més informació
Lloc web Web oficial
Stack Exchange Etiqueta
Guia d'usuari Guia d'usuari
Modifica les dades a Wikidata

Apache Hadoop és un entorn de programari emprat per a l'emmagatzemament i processat distribuït de dades usant el model de programació MapReduce. L'Apache Hadoop consisteix de clústers d'ordinadors construïts mitjançant maquinari estàndard. La idea fonamental de l'arquitectura Hadoop és l'assumpció que les fallides al maquinari són comuns i haurien de ser reparades automàticament a través d'aquest programari.[1][2][3]

Propietats[modifica]

El nucli de l'Apache Hadoop consisteix dels mòduls :

  • Hadoop Common : conté les biblioteques i utilitats cridades des del altres mòduls.
  • HDFS (Hadoop Distributed File System) : part d'emmagatzematge distribuït entre diversos nodes o ordinadors.
  • Hadoop YARN : plataforma per a la gestió dels recursos (nodes, amplada de banda assignat...)
  • Hadoop MapReduce : part de processat de dades a gran escala, és una versió adaptada del programari MapReduce.
Fig1. Exemple d'estructura distribuïda Hadoop

Arquitectura[modifica]

  • Sistema d'arxius : HDFS és un sistema d'arxius distribuïts, portabble i escalable, escrit en llenguatge java. HDFS emmagatzema grans arxius (típicament de l'ordre de gigabytes a terabytes) a través de múltiples màquines. S'aconsegueix la fiabilitat dels arxius mitjançant el replicat de les dades en molts ordinadors. Un avantatge d'emprar HDFS és el coneixement de l'estat de les dades entre els assignadors de tasques. Aquests assignadors de tasques redueixen la quantitat de processos o optimitzen el temps total. Per exemple, si el node A conté les dades (x,y,z) i el node B conté les dades (a,b,c),ns data (a, b, c), l'assignador de taques adjudicarà les dades (x,y,z) al node A i les dades (a,b,c) al node B. D'aquesta manera es redueix el tràfic total per la xarxa.
  • Assignador de tasques : cada node està donat d'un assignador de tasques implementat mitjançant una Java virtual machine (JVM). 

Projectes basats en Hadoop[modifica]

  • Ambari: una eina basada en web per a provisionar, gestionar i monotoritzar l'Apache Hadoop, que inclo suport per a Hadoop HDFS, Hadoop MapReduce, Hive, HCatalog, HBase, ZooKeeper, Oozie, Pig i Sqoop.
  • Avro: un sistema de serialització de dades.
  • Cassandra: una base de dades multimáster escalable sense punts de fallida.
  • Chukwa: un sistema de col.lecta de dades per a gestionar grans sistemes distribuïts.
  • HBase: una base de dades distribuïda que suporta emmagatzemament de dades estructurades per a garns taules.
  • Hive: una inaestructura de dipòsits de dades.
  • Mahout: una biblioteca d'escaneig de dades i aprenentatge automètic.
  • Pig: un llenguatge de flux de dades d'alt nivell i entorn de programació en paral·lel.
  • Spark: una màquina de càlcul ràpid i general per a les dades Hadoop.
  • Tez: un entorn de programació de flux de dades genèric, construït sobre Hadoop YARN.
  • ZooKeeper: un servei de coordinació d'altes prestacions per a aplicacions distribuïdes.

Referències[modifica]

  1. «What is Apache Hadoop?» (en anglès). Hortonworks, 26-10-2017.
  2. «What is Apache™ Hadoop®? | MapR» (en anglès). [Consulta: 26 octubre 2017].
  3. «Apache™ Hadoop» (en anglès). https://www.slideshare.ne.+[Consulta: 26 octubre 2017].

Vegeu també[modifica]

Programaris similars : Google File System.