Apache Spark amb Hadoop: per què importa?



La implementació d’Apache Spark amb Hadoop a gran escala per part de les millors empreses indica que té èxit i el seu potencial a l’hora de processar en temps real.

Hadoop, el marc de processament de dades que s’ha convertit en una plataforma per si mateix, esdevé encara millor quan s’hi connecten bons components. Algunes deficiències d’Hadoop, com ara el component MapReduce d’Hadoop, tenen la reputació de ser lentes per a l’anàlisi de dades en temps real.





Introduïu Apache Spark, un motor de processament de dades basat en Hadoop dissenyat per a càrregues de treball per lots i en streaming, ara en la seva versió 1.0 i equipat amb funcions que exemplifiquen quins tipus de treball s’inclou Hadoop. Spark s’executa a sobre dels clústers Hadoop existents per proporcionar una funcionalitat millorada i addicional.

Vegem les funcions clau de spark i com funciona juntament amb Hadoop i .



Avantatges clau d'Apache Spark:

img2-R

Funcions impressionants de Spark:

  • Integració Hadoop - Spark pot funcionar amb fitxers emmagatzemats en HDFS.
  • Shell interactiu de Spark - Spark està escrit a Scala i té la seva pròpia versió de l’intèrpret de Scala.
  • Suite analítica de Spark - Spark inclou eines d’anàlisi de consultes interactives, processament i anàlisi de gràfics a gran escala i anàlisi en temps real.
  • Conjunts de dades distribuïts resistents (RDD) - Els RDD són objectes distribuïts que es poden emmagatzemar a la memòria cau a través d’un clúster de nodes de càlcul. Són els objectes de dades principals utilitzats a Spark.
  • Operadors distribuïts - A més de MapReduce, hi ha molts altres operadors que es poden utilitzar en RDD’s.

Avantatges d'utilitzar Apache Spark amb Hadoop:

fibonacci iteratiu c ++
  • Apache Spark s’adapta a la comunitat de codi obert Hadoop, a la part superior del sistema de fitxers distribuïts (HDFS) de Hadoop. Tot i això, Spark no està lligat al paradigma MapReduce de dues etapes i promet un rendiment fins a 100 vegades més ràpid que Hadoop MapReduce per a determinades aplicacions.



  • Molt adequat per als algoritmes d’aprenentatge automàtic - Spark proporciona primitives per a la informàtica de clústers en memòria que permet als programes d’usuari carregar dades a la memòria d’un clúster i consultar-les repetidament.

  • Córrer 100 vegades més ràpid - El programari d’anàlisi Spark també pot accelerar els treballs que s’executen a la plataforma de processament de dades Hadoop. Apache Spark, anomenat 'ganivet suís de Hadoop', ofereix la possibilitat de crear tasques d'anàlisi de dades que poden executar-se 100 vegades més ràpidament que les que s'executen amb l'Apache Hadoop MapReduce estàndard. MapReduce ha estat àmpliament criticat com un coll d'ampolla en clústers Hadoop perquè executa feines en mode per lots, cosa que significa que no és possible fer anàlisis de dades en temps real.

    crear una matriu d'objectes
  • Alternativa a MapReduce - Spark proporciona una alternativa a MapReduce. Executa feines en ràfegues curtes de micro-lots separats de cinc segons o menys. També proporciona més estabilitat que els marcs Hadoop orientats a fluxos en temps real, com Twitter Storm. El programari es pot utilitzar per a diversos treballs, com ara una anàlisi contínua de dades en directe i gràcies a una biblioteca de programari, treballs més profunds computacionalment que impliquen aprenentatge automàtic i processament de gràfics.

  • Suport per a diversos idiomes - Amb Spark, els desenvolupadors poden escriure feines d’anàlisi de dades a Java, Scala o Python, mitjançant un conjunt de més de 80 operadors d’alt nivell.

  • Suport a la biblioteca - Les biblioteques de Spark estan dissenyades per complementar els tipus de treballs de processament que s’estan explorant amb més agressivitat amb els darrers desplegaments d’Hadoop amb suport comercial. MLlib implementa una gran quantitat d’algoritmes d’aprenentatge automàtic comuns, com ara la classificació bayesiana ingènua o el clustering Spark Streaming permet el processament a gran velocitat de dades ingerides de múltiples fonts i GraphX ​​permet realitzar càlculs sobre dades de gràfics.

  • API estable - Amb la versió 1.0, Apache Spark ofereix una API estable (interfície de programació d'aplicacions), que els desenvolupadors poden utilitzar per interactuar amb Spark mitjançant les seves pròpies aplicacions. Això ajuda a utilitzar Storm més fàcilment en el desplegament basat en Hadoop.

  • Component SPARK SQL El component SQL Spark per accedir a dades estructurades permet interrogar-les juntament amb dades no estructurades en el treball d’anàlisi. Spark SQL, que actualment només és alfa, permet executar consultes semblants a SQL sobre dades emmagatzemades a Apache Hive. L’extracció de dades d’Hadoop mitjançant consultes SQL és una altra variant de la funcionalitat de consulta en temps real que brolla al voltant d’Hadoop.

  • Compatibilitat d'Apache Spark amb Hadoop [HDFS, HBASE i YARN] - Apache Spark és totalment compatible amb el sistema de fitxers distribuïts (HDFS) d’Hadoop, així com amb altres components d’Hadoop, com ara YARN (Un altre negociador de recursos) i la base de dades distribuïda HBase.

Adoptadors de la indústria:

Empreses de TI com Cloudera, Pivotal, IBM, Intel i MapR han inclòs Spark a les seves piles Hadoop. Databricks, una empresa fundada per alguns dels desenvolupadors de Spark, ofereix suport comercial per al programari. Tant Yahoo com la NASA, entre d'altres, utilitzen el programari per a operacions diàries de dades.

Conclusió:

El que Spark pot oferir segurament serà un gran atractiu tant per als usuaris com per als venedors comercials d’Hadoop. Els usuaris que busquen implementar Hadoop i que ja han construït molts dels seus sistemes d’anàlisi al voltant d’Hadoop se senten atrets per la idea de poder utilitzar Hadoop com a sistema de processament en temps real.

Spark 1.0 els proporciona una altra varietat de funcionalitats per donar suport o crear articles propietaris. De fet, un dels tres grans proveïdors d’Hadoop, Cloudera, ja ha estat proporcionant suport comercial a Spark mitjançant la seva oferta Cloudera Enterprise. Hortonworks també ha estat oferint Spark com a component de la seva distribució Hadoop. La implementació de Spark a gran escala per part de les millors empreses indica el seu èxit i el seu potencial a l’hora de processar en temps real.

Tens alguna pregunta? Esmenta’ls a la secció de comentaris i et respondrem.

Articles Relacionats:

com fer un doble a un int a java