Apache Spark med Hadoop - hvorfor det betyder noget?

Implementeringen af ​​Apache Spark med Hadoop i stor skala af topfirmaer indikerer, at det er succes og dets potentiale, når det kommer til realtidsbehandling.



Hadoop, databehandlingsrammen, der er blevet en platform for sig selv, bliver endnu bedre, når gode komponenter er forbundet til det. Nogle mangler ved Hadoop, som MapReduce-komponenten i Hadoop, har ry for at være langsomme til realtidsdataanalyse.



Indtast Apache Spark, en Hadoop-baseret databehandlingsmotor designet til både batch- og streaming-arbejdsbelastninger, nu i sin 1.0-version og udstyret med funktioner, der eksemplificerer, hvilken slags arbejde Hadoop bliver skubbet til at inkludere. Spark kører oven på eksisterende Hadoop-klynger for at give forbedret og yderligere funktionalitet.

Lad os se på gnistens nøglefunktioner, og hvordan det fungerer sammen med Hadoop og .



Apache Spark-nøglefordele:

img2-R

Sparks fantastiske funktioner:

  • Hadoop-integration - Spark kan arbejde med filer gemt i HDFS.
  • Spark's Interactive Shell - Spark er skrevet i Scala og har sin egen version af Scala-tolken.
  • Sparks Analytic Suite - Spark leveres med værktøjer til interaktiv forespørgselsanalyse, storstilet grafbehandling og analyse og realtidsanalyse.
  • Modstandsdygtige distribuerede datasæt (RDD'er) - RDD'er er distribuerede objekter, der kan cachelagres i hukommelsen på tværs af en klynge af computernoder. De er de primære dataobjekter, der bruges i Spark.
  • Distribuerede operatører - Udover MapReduce er der mange andre operatører, man kan bruge på RDD'er.

Fordele ved at bruge Apache Spark med Hadoop:

at komme i gang med mysql workbench
  • Apache Spark passer ind i Hadoop open source-samfundet, bygger oven på Hadoop Distributed File System (HDFS). Spark er dog ikke bundet til det to-trins MapReduce-paradigme og lover ydeevne op til 100 gange hurtigere end Hadoop MapReduce til visse applikationer.



  • Velegnet til algoritmer til maskinindlæring - Spark giver primitiver til in-memory cluster computing, der giver brugerprogrammer mulighed for at indlæse data i en klynges hukommelse og spørge dem gentagne gange.

  • Kør 100 gange hurtigere - Spark, analysesoftware kan også fremskynde job, der kører på Hadoop-databehandlingsplatformen. Apache Spark kaldes 'Hadoop Swiss Army kniv' og giver mulighed for at oprette dataanalyserjob, der kan køre 100 gange hurtigere end dem, der kører på standard Apache Hadoop MapReduce. MapReduce er blevet kritiseret bredt som en flaskehals i Hadoop-klynger, fordi den udfører job i batch-tilstand, hvilket betyder, at realtidsanalyse af data ikke er mulig.

    hvordan man bruger python i anaconda
  • Alternativ til MapReduce - Spark giver et alternativ til MapReduce. Det udfører job i korte udbrud af mikrobatcher, der er mindst fem sekunder fra hinanden. Det giver også mere stabilitet end stream-orienterede Hadoop-rammer i realtid som Twitter Storm. Softwaren kan bruges til en række job, såsom en løbende analyse af live data og takket være et softwarebibliotek, mere beregningsdygtige job, der involverer maskinindlæring og grafbehandling.

  • Støtte til flere sprog - Ved hjælp af Spark kan udviklere skrive dataanalyserjob i Java, Scala eller Python ved hjælp af et sæt på mere end 80 operatører på højt niveau.

  • Biblioteksstøtte - Sparks biblioteker er designet til at supplere de typer behandlingsjob, der udforskes mere aggressivt med de nyeste kommercielt understøttede implementeringer af Hadoop. MLlib implementerer en række almindelige maskinlæringsalgoritmer, såsom naiv Bayesian-klassificering eller gruppering af Spark Streaming muliggør højhastighedsbehandling af data, der indtages fra flere kilder, og GraphX ​​giver mulighed for beregninger af grafdata.

  • Stabil API - Med version 1.0 tilbyder Apache Spark en stabil API (applikationsprogrammeringsgrænseflade), som udviklere kan bruge til at interagere med Spark gennem deres egne applikationer. Dette hjælper med at bruge Storm lettere i Hadoop-baseret implementering.

  • SPARK SQL-komponent - Spark SQL-komponent til at få adgang til strukturerede data, gør det muligt at forhøre dataene sammen med ustrukturerede data i analysearbejde. Spark SQL, som kun er i alfa i øjeblikket, gør det muligt at køre SQL-lignende forespørgsler mod data gemt i Apache Hive. Uddrag af data fra Hadoop via SQL-forespørgsler er endnu en variant af realtidsforespørgselsfunktionaliteten, der springer op omkring Hadoop.

  • Apache Spark-kompatibilitet med Hadoop [HDFS, HBASE og YARN] - Apache Spark er fuldt kompatibel med Hadoop's Distributed File System (HDFS) såvel som med andre Hadoop-komponenter såsom YARN (Yet Another Resource Negotiator) og den distribuerede HBase-database.

Industriadoptere:

IT-virksomheder som Cloudera, Pivotal, IBM, Intel og MapR har alle foldet Spark ind i deres Hadoop-stakke. Databricks, et firma grundlagt af nogle af udviklerne af Spark, tilbyder kommerciel support til softwaren. Både Yahoo og NASA bruger blandt andet softwaren til daglig datadrift.

Konklusion:

Hvad Spark har at tilbyde, vil sandsynligvis være et stort træk for både brugere og kommercielle leverandører af Hadoop. Brugere, der ønsker at implementere Hadoop, og som allerede har bygget mange af deres analysesystemer omkring Hadoop, er tiltrukket af ideen om at kunne bruge Hadoop som et realtidsbehandlingssystem.

Spark 1.0 giver dem en anden række funktioner til at understøtte eller opbygge ejendomsrettigheder rundt omkring. Faktisk har en af ​​de tre store Hadoop-leverandører, Cloudera, allerede ydet kommerciel support til Spark via sit Cloudera Enterprise-tilbud. Hortonworks har også tilbudt Spark som en del af Hadoop-distributionen. Implementeringen af ​​Spark i stor skala af topvirksomheder angiver dets succes og dets potentiale, når det kommer til realtidsbehandling.

Har du et spørgsmål til os? Nævn dem i kommentarfeltet, så vender vi tilbage til dig.

Relaterede indlæg:

Fibonacci-serieprogram i Java