Hjem Personlig finansiering Loggdata med flume i HDFS - dummies

Loggdata med flume i HDFS - dummies

Video: HBW154 - Brewfather Walkthrough 2024

Video: HBW154 - Brewfather Walkthrough 2024
Anonim

Noen av dataene som kommer opp i Hadoop Distributed File System (HDFS), kan lande det via databaselastoperasjoner eller andre typer batchprosesser, men hva hvis du vil fange opp dataene som strømmer i datastrømmer med høy ytelse, for eksempel programloggdata? Apache Flume er gjeldende standard måte å gjøre det enkelt, effektivt og trygt.

Apache Flume , et annet toppnivåprosjekt fra Apache Software Foundation, er et distribuert system for å aggregere og flytte store mengder strømdata fra forskjellige kilder til en sentralisert datalager.

En annen måte, Flume er designet for kontinuerlig inntak av data i HDFS. Dataene kan være noen form for data, men Flume er spesielt godt egnet til å håndtere loggdata, for eksempel loggdata fra webservere. Enheter av dataene som Flume prosesser kalles hendelser ; Et eksempel på en hendelse er en loggoppføring.

For å forstå hvordan Flume fungerer innenfor en Hadoop-klynge, må du vite at Flume kjører som en eller flere agenter, og at hver agent har tre pluggbare komponenter: kilder, kanaler og vasker:

  • Kilder hente data og send den til kanaler.

  • Kanaler holder datakøer og fungerer som ledninger mellom kilder og vasker, noe som er nyttig når innkommende strømningshastighet overstiger utgående strømningshastighet.

  • Vask behandle data som ble tatt fra kanaler og levere det til en destinasjon, for eksempel HDFS.

En agent må ha minst én av hver komponent å kjøre, og hver agent er inneholdt i sin egen forekomst av Java Virtual Machine (JVM).

En hendelse som er skrevet til en kanal av en kilde, fjernes ikke fra denne kanalen før en vaske fjerner den ved en transaksjon. Hvis det oppstår en nettverksfeil, holder kanalene sine hendelser i kø til synker kan skrive dem til klyngen. En minnekanal kan behandle hendelser raskt, men den er flyktig og kan ikke gjenopprettes, mens en filbasert kanal gir utholdenhet og kan gjenopprettes ved feil.

Hver agent kan ha flere kilder, kanaler og vasker, og selv om en kilde kan skrive til mange kanaler, kan en vask ta data fra bare en kanal.

En agent er bare en JVM som kjører Flume, og dunkene for hver agentknutepunkt i Hadoop-klyngen sender data til samlernoder , som samlet dataene fra mange agenter før skriver den til HDFS, der den kan analyseres av andre Hadoop-verktøy.

Agenter kan kobles sammen slik at vasken fra en agent sender data til kilden fra en annen agent.Avro, Apaches eksterne call-and-serialization rammeverk, er den vanlige måten å sende data over et nettverk med Flume, fordi det tjener som et nyttig verktøy for effektiv serialisering eller transformasjon av data til et kompakt binært format.

I sammenheng med Flume er kompatibilitet viktig: En Avro-begivenhet krever for eksempel en Avro-kilde, og en vask må levere hendelser som passer til destinasjonen.

Hva gjør denne flotte kjeden av kilder, kanaler og vasker arbeid er Flume-agentkonfigurasjonen, som er lagret i en lokal tekstfil som er strukturert som en Java-egenskapsfil. Du kan konfigurere flere agenter i samme fil. Se på en prøvefil, som heter flume-agent. conf - det er satt til å konfigurere en agent som heter shaman:

# Identifiser komponentene på agent shaman: shaman. kilder = netcat_s1 shaman. vasker = hdfs_w1 shaman. kanaler = in-mem_c1 # Konfigurer kilden: sjaman. kilder. netcat_s1. type = netcat shaman. kilder. netcat_s1. bind = localhost shaman. kilder. netcat_s1. port = 44444 # Beskriv vasken: sjaman. synker. hdfs_w1. type = hdfs shaman. synker. hdfs_w1. hdfs. sti = hdfs: // shaman. synker. hdfs_w1. hdfs. writeFormat = Tekst shaman. synker. hdfs_w1. hdfs. fileType = DataStream # Konfigurer en kanal som buffer hendelser i minnet: shaman. kanaler. i-mem_c1. type = minne shaman. kanaler. i-mem_c1. kapasitet = 20000 shaman. kanaler. i-mem_c1. transactionCapacity = 100 # Bind kilden og synke til kanalen: shaman. kilder. netcat_s1. kanaler = in-mem_c1 shaman. synker. hdfs_w1. kanaler = in-mem_c1

Konfigurasjonsfilen inneholder egenskaper for hver kilde, kanal og synke i agenten og angir hvordan de er koblet til. I dette eksemplet har agent shaman en kilde som lytter etter data (meldinger til netcat) på port 44444, en kanal som buffer hendelsesdata i minnet, og en vask som logger hendelsesdata til konsollen.

Denne konfigurasjonsfilen kunne ha blitt brukt til å definere flere agenter; Her konfigurerer du bare en for å holde ting enkelt.

For å starte agenten, bruk et skalskript som heter flume-ng, som ligger i bin-katalogen i Flume-distribusjonen. Fra kommandolinjen, utsted agentkommandoen, angi banen til konfigurasjonsfilen og agentnavnet.

Følgende utvalgskommando starter Flume-agenten:

flume-ng-agent -f / -n sjaman

Flume-agentens logg skal ha oppføringer som bekrefter at kilden, kanalen og sinken startet vellykket.

For å teste konfigurasjonen kan du telnet til port 44444 fra en annen terminal og sende Flume en begivenhet ved å skrive inn en vilkårlig tekststreng. Hvis alt går bra, sender den opprinnelige Flume-terminalen hendelsen i en loggmelding som du skal kunne se i agentens logg.

Loggdata med flume i HDFS - dummies

Redaktørens valg

Hvordan å stable og gruppereformer i Word 2013 - dummies

Hvordan å stable og gruppereformer i Word 2013 - dummies

Enkeltformer kan noen ganger være nyttige i en dokument, men den virkelige kraften til Word 2013's Shapes-funksjonen kan bli funnet ved å kombinere figurer for å lage mer komplekse tegninger og logoer. Du kan stable formene oppå hverandre og kontrollere rekkefølgen de vises i stakken. Når du har ...

Hvordan du angir punktavstand i Word 2013 - dummies

Hvordan du angir punktavstand i Word 2013 - dummies

Word 2013 lar deg legge til "luft" til plass før eller etter eller i midten av avsnittene dine. I midten av avsnittet har du linjeavstand. Før og etter avsnittet kommer punktavstand. Hvordan sette linjeavstanden Endre linjeavstanden legger til ekstra mellomrom mellom alle tekstlinjer ...

Slik starter du et nytt dokument i Word 2007 - dummies

Slik starter du et nytt dokument i Word 2007 - dummies

Starter et nytt dokument i Word 2007 er lett. Hvis du nettopp har startet Word 2007 og vil åpne et tomt dokument, kan du følge tre enkle trinn.

Redaktørens valg

Slik oppretter du en AWS Administrator User - Dummies

Slik oppretter du en AWS Administrator User - Dummies

Opprett Administrator-gruppen er det første trinnet for å sikre at din AWS (Amazon Web Services) -kontoen er fortsatt trygg. Det neste trinnet er å opprette en konto for deg selv og tilordne den til administratorgruppen, slik at du har full tilgang til de administrative funksjonene i din AWS-konto. Følgende trinn beskriver hvordan ...

Vurderer AWS-støttede plattformer - dummies

Vurderer AWS-støttede plattformer - dummies

Hvis du ikke har behandlet AWS eller skyen ennå, du kan være fristet til å tenke på plattformer som en bestemt kombinasjon av gjenstander. For eksempel, når du ser ditt eget lokale oppsett, har du en server som kjører et bestemt operativsystem og har et bestemt sett med maskinvareressurser. Systemet har en bestemt ...

Lage skuffer på Amazon Web Services - dummies

Lage skuffer på Amazon Web Services - dummies

Når du er den stolte eieren av Amazon Web Services (AWS ) konto, det er på tide å gjøre noe nyttig, som å lage en bøtte. Start med å sjekke ut dine S3-ressurser. For å gjøre det, klikk S3-lenken på startsiden for AWS Management Console, som vist her: Du er tatt til en side som lar deg administrere ...

Redaktørens valg

Slik bruker du Eye-Fi med Evernote-dummies

Slik bruker du Eye-Fi med Evernote-dummies

Et selskap kalt Eye-Fi gjør det mulig å Koble kameraet ditt med Evernote, selv uten å koble kameraet til datamaskinen. Følg disse trinnene for å bruke Eye-Fi: Følg instruksjonene som følger med Eye-Fi-kortet for å konfigurere en Eye-Fi-konto. Sett inn Eye-Fi-kortet i kameraet. Slå på kameraet ditt. ...

Hvordan man merker på Evernote for datamaskiner og tabletter - dummies

Hvordan man merker på Evernote for datamaskiner og tabletter - dummies

Hele poenget med å lagre nyttig informasjon er for å kunne finne den senere. Tagging i Evernote er fundamentalt lik for alle plattformer og er ekstremt nyttig når du dash om å prøve å skrive inn notater på hvilken enhet du bruker på den tiden. For å lage en tagg for et notat på en datamaskin eller ...