Hvorfor strømming av data er fremtiden for big data, og Apache Kafka leder anklagen

    Bilde: iStockphoto / Peterfactors

    Da jeg skrev en fersk kolonne om hvordan streaming av data i økende grad hører til Apache Kafka, hørte jeg fra mange lesere. En av de største innvendingene er at jeg var for rask til å kaste ut babyen (Apache Hadoop) med badevannet.

    En av de hyppige korrespondentene mine er Justin Langseth, grunnlegger og administrerende direktør for oppstart av big data visualisering Zoomdata. Han hadde noen interessante innsikter å dele i utvekslingen vår over fremveksten av Kafka og hva foretak trenger å vurdere når de bestemmer seg for å omfatte strømningsdata.

    Du trenger mer batch-bell

    TechRepublic : Du er enig i min forutsetning at verden kommer til å leve datastrømmer, men du argumenterer for at det er for tidlig å snakke om å fortrenge Hadoop og big data innsjøer med informasjon.

    Langseth : Alle data opprinnelig ble generert på et punkt på "kanten" og overført i en strøm for videre behandling og eventuell lagring. Ingen data genereres "i batch." I den andre enden ønsker folk å ta forretningsavgjørelser basert på de nyeste dataene, samt hvordan de passer inn i historisk kontekst.

    Så ... strømmer til venstre og strømmer til høyre.

    Hvis både generasjonen og forbruket avsluttes krever en strømorientering, lurer flere og flere på hvorfor noe i midten trenger å være noe annet enn strømbasert også. Opprinnelig ble batch utviklet fordi en skribent på en markedsplass for tusenvis av år siden løp tom for rom på rullebladet og trengte å starte en ny bla. Da datamaskiner kom rundt, var den eneste måten å transportere data på å FedEx det på kassetter, og hvis du skal gjøre det, er det mer effektivt å gjøre det med mer enn én post om gangen. Så batch ble født.

    Hadoop representerer det siste hurra for batchorientert prosessering. Det er bare for mange grunner til at det er mye enklere, raskere og sikrere å håndtere ende-til-ende datapipeline som streaming hele veien. Så hvis du har verdifulle forretnings- og dataprosesser i et batchorientert system, bør du tydeligvis ikke bare kaste dem bort i morgen. Og hvis de er basert på Hadoop, er det greit også. Men hvis du bygger noe nytt i dag, er det sterke argumenter for å unngå batchtrinn og bare strømme fra ende til annen.

    Kafka kan ikke gjøre alt ... ennå

    TechRepublic : Apache Kafka, naturlig designet for denne nye verdenen av strømningsdata, så et 260% hopp i utviklernes popularitet i fjor. Hva er fordeler og ulemper med Kafka for kundestrømningsbrukssaker?

    Langseth : Kafka er de facto-arkitekturen for å streame data. Den har et aktivt samfunn, og det fungerer bare. Jeg er ikke sikker på hvorfor noen vil bruke noe annet med mindre det er en fullstendig administrert tjeneste som Kinesis på AWS hvis du har alt annet avhengig av AWS-tjenester og du er opptatt av å bo der. Da antar jeg at du kunne tenke på det, men likevel kunne Kinesis også vinne der.

    Det er absolutt noen ting Kafka ikke gjør så bra som andre ting du trenger, som for å rense data, bli med, samle og så videre; men det er ting som Apache Spark Streaming som fungerer sammen med Kafka for dem.

    Det siste du trenger som Kafka ikke gjør, er langsiktig lagring av data, så du trenger et "endelig hvilested" (hvis du vil) for dataene dine. Og det skal være noe pålitelig, relativt utøvende og så billig som mulig, som Amazon S3. Når det er sagt, er det folk i Kafka-samfunnet som har visjoner om å få Kafka til å gjøre alle de tingene jeg nettopp nevnte at det ikke gjør det ennå, så følg med på det.

    Alternativer til Kafka

    TechRepublic : Hva er alternativene til Kafka for streaming? Er de bra, og i så fall hvorfor får Kafka all kjærlighet / vekst?

    Langseth : Amazon Kinesis, for en, så vel som alle de mange open source-prosjektene hvis navn slutter med "MQ." Er de bra? Sannsynligvis, eller ingen ville bruke dem til nye prosjekter. Hvorfor får Kafka mest oppmerksomhet? En kombinasjon av kritisk masse, et lidenskapelig samfunn og underliggende arkitektonisk sunnhet. Mer tekniske detaljer om Kafka vs. RabitMQ finner du i dette utmerkede Quora-svaret om emnet.

    Verden som Kafka bygde

    TechRepublic : Ferske øyne er påkrevd for bedrifter som ser på potensialet i sanntids streaming-data, ikke sant? I så fall, hva slags nye brukssaker og muligheter ser du når du omfavner streaming?

    Mer om Big Data

    • Datahåndtering: Et jukseark
    • Hvordan integrere robotprosessautomatisering i big data-prosjekter
    • Programmereren Hadley Wickham utpeker mangfoldet av R-samfunnet
    • Hvordan velge riktige dataanalyseverktøy: 5 trinn

    Langseth : Noe av det viktigste som ofte blir oversett når du designer et nytt streamingdatasystem i disse dager, er formatet på nyttelastdataene. Du kan designe verdens beste strømningsarkitektur for å transportere dataene dine, men hvis du ikke sender en gjennomtenkt nyttelast, savner du poenget. Ideelt sett genererer du dataene rent, i et format der felt er klart definert (JSON eller XML), og ideelt sett sender du aspekter av skjemaet sammen med hver datapakke (eksempel: AVRO).

    Hvis du trenger at de nylig genererte dataene raskt skal brukes til analyse eller maskinlæring, kan du se på ting som Apache Arrow, som er designet for å la forskjellige prosesser kommunisere med de samme dataene i minnet i sanntid.

    Når det gjelder forretningsverdi, jo enklere arkitektur, jo lettere blir det å bygge, teste og vedlikeholde. Og jo raskere og enkelt nye data kan brukes i analyse og maskinlæring, jo mer konkurransefortrinn kan oppnås i enhver datadrevet virksomhet. Og å oppnå konkurransefortrinn er det å utnytte strømningsdata handler om.

    Data, Analytics og AI Nyhetsbrev

    Få eksperttips for å mestre grunnleggende grunnleggende analyser av data, og følg med på den siste utviklingen innen kunstig intelligens. Leveres mandager

    Registrer deg i dag

    © Copyright 2020 | mobilegn.com