Håll dig uppdaterad med senaste tekniktrender
gå med i DataFlair på Telegram!!
Kafka Integration med Hadoop
idag, i denna Kafka Hadoop handledning, kommer vi att diskutera Kafka Hadoop Integration. Dessutom kommer vi att starta denna handledning med Hadoop introduktion. Vi kommer också att se Hadoop Producer och Hadoop Consumer i Kafka-Integration med Hadoop.
i grund och botten kan vi integrera Kafka med Hadoop-tekniken för att ta itu med olika användningsfall, till exempel batchbehandling med Hadoop. Så i den här artikeln, ”Kafka Hadoop integration” kommer vi att lära oss proceduren för att integrera Hadoop med Kafka på ett enklare och effektivt sätt. Innan Kafka integreras med Hadoop är det dock viktigt att lära sig den korta introduktionen av Hadoop.
så, låt oss börja Kafka Hadoop Integration.
Kafka Hadoop Integration
Vad är Hadoop?
ett storskaligt distribuerat batchbehandlingsramverk som använder för att parallellisera databehandlingen bland många noder och också tar itu med utmaningarna för distribuerad databehandling, inklusive big data, är vad vi kallar Hadoop.
i grund och botten fungerar det på principen om MapReduce-ramverket som introduceras av Google. Det erbjuder ett enkelt gränssnitt för parallellisering samt distribution av storskaliga beräkningar. Dessutom har det sitt eget distribuerade datafilsystem som vi kallar som HDFS (Hadoop Distributed File System). För att förstå HDFS delar den data i små bitar (kallade block) och distribuerar den vidare till alla noder i ett typiskt Hadoop-kluster. Dessutom skapar det replikering av dessa små bitar av data såväl som det lagrar dem för att säkerställa att data är tillgängliga från en annan nod om någon nod är nere.
nu är här en bild som visar högnivåvyn för ett Hadoop-kluster med flera noder:
Hadoop Multinode Cluster
a. huvudkomponenter i Hadoop
Följande är Hadoop-komponenterna:
- Namnnod
en enda interaktionspunkt för HDFS är vad vi kallar Namenode. Som sitt jobb, det håller information om de små bitar (block) av data som är fördelade mellan nod.
- sekundär Namenode
i händelse av ett namn nod fel, lagrar den redigeringsloggar, för att återställa den senaste uppdaterade tillståndet för HDFS.
- data nod
det håller de faktiska data som distribueras av namenoden i block samt håller replikerade kopia av data från andra noder.
- Job Tracker
för att dela MapReduce jobb i mindre uppgifter, hjälper Job Tracker.
- Task Tracker
för utförandet av uppgifter som delas av job tracker är task tracker ansvarig.
se dock till att aktivitetsspåraren och datanoden delar samma maskiner.
kontrollera hur mycket du vet om Hadoop
Kafka Hadoop Integration
för att bygga en pipeline som är tillgänglig för realtidsbehandling eller övervakning samt att ladda data i Hadoop, NoSQL eller datalagringssystem för offline bearbetning och rapportering, särskilt för realtidspublicering-prenumerera användningsfall använder vi Kafka.
a. Hadoop producer
för att publicera data från ett Hadoop-kluster till Kafka erbjuder en Hadoop-producent en bro som du kan se i bilden nedan:
dessutom betraktas Kafka-ämnen som Uri för en Kafka-producent. Även om URI: er anges nedan för att ansluta till en specifik Kafka-mäklare:
kafka://< kafka-mäklare> / <kafka-ämne>
Tja, för att få data från Hadoop, föreslår Hadoop-producentkoden två möjliga tillvägagångssätt, de är:
- använda Pig-skriptet och skriva meddelanden i Avro-format
i grund och botten, för att skriva data i ett binärt Avro-format, använder Kafka-producenter Pig-skript i detta tillvägagångssätt. Här hänvisar varje rad till ett enda meddelande. Vidare väljer avrokafkastorage-klassen Avro-schemat som sitt första argument och ansluter sedan till Kafka URI för att driva data in i Kafka-klustret. Dessutom kan vi enkelt skriva till flera ämnen och mäklare i samma Pig script-baserade jobb, genom att använda avrokafkastorage producent.
- använda klassen Kafka OutputFormat för jobb
nu, i den andra metoden, för publicering av data till Kafka-klustret, används klassen Kafka OutputFormat (extends Hadoop ’ s OutputFormat class). Här, genom att använda lågnivåmetoder för publicering, publicerar den meddelanden som byte och erbjuder också kontroll över utgången. Även om Kafka OutputFormat-klassen använder kafkarecordwriter-klassen för att skriva en post (meddelande) till ett Hadoop-kluster.
dessutom kan vi också konfigurera Kafka Producer parametrar och Kafka Broker information under ett jobb konfiguration, för Kafka producenter.
b. Hadoop Consumer
medan ett Hadoop-jobb som drar data från Kafka-mäklaren och ytterligare driver den till HDFS, är vad vi kallar en Hadoop-konsument. Men underifrån kan du se positionen för en Kafka-konsument i arkitekturmönstret:
Kafka Hadoop integration – Hadoop Consumer
som en process, gör en Hadoop jobb utföra parallell laddning från Kafka till HDFS också några mappers för att ladda data som beror på antalet filer i inmatningskatalogen. Dessutom finns data från Kafka och de uppdaterade ämnesförskjutningarna i utmatningskatalogen. Vidare, i slutet av kartuppgiften, skriver enskilda mappare förskjutningen av det senast konsumerade meddelandet till HDFS. Men varje mapper startar helt enkelt från de förskjutningar som lagras i HDFS, om ett jobb misslyckas och jobb startas om.
så det var allt i Kafka Hadoop Integration. Hoppas du gillar vår förklaring.