Kafka Vacatures

Vacatures van oktober 2020 voor Kafka recent geupdate!

Apache Kafka® is een gedistribueerd streamingplatform . Wat betekent dat precies?

Een streamingplatform heeft drie belangrijke mogelijkheden:

Publiceer en abonneer u op informatiestromen, vergelijkbaar met een berichtenwachtrij of een enterprise messaging-systeem.
Sla informatiestromen op een fouttolerante en duurzame manier op.
Verwerk stromen van records als ze zich voordoen.
Kafka wordt over het algemeen gebruikt voor twee brede klassen van toepassingen:

Real-time streaming datapijplijnen bouwen die betrouwbaar gegevens tussen systemen of applicaties krijgen
Real-time streaming-applicaties bouwen die transformeren of reageren op de datastromen
Om te begrijpen hoe Kafka deze dingen doet, laten we Duik in duiken en de mogelijkheden van Kafka van onderuit verkennen.

Eerst een paar concepten:

Kafka wordt uitgevoerd als een cluster op een of meer servers die meerdere datacenters kunnen overspannen.
Het Kafka-cluster slaat gegevensstromen op in categorieën die onderwerpen worden genoemd .
Elke record bestaat uit een sleutel, een waarde en een tijdstempel.
Kafka heeft vier kern-API’s:

Met de Producer-API kan een toepassing een stroom records naar een of meer Kafka-onderwerpen publiceren.
Met de Consumer API kan een applicatie zich abonneren op een of meer onderwerpen en de stroom records verwerken die ze hebben geproduceerd.
Met de Streams API kan een applicatie fungeren als een streamprocessor , een invoerstroom van een of meer onderwerpen verbruiken en een uitvoerstroom produceren naar een of meer uitvoeronderwerpen, waardoor de invoerstromen effectief worden omgezet in uitvoerstromen.
Met de Connector API kunnen herbruikbare producenten of consumenten die Kafka-onderwerpen verbinden met bestaande applicaties of datasystemen worden gebouwd en geëxploiteerd. Een connector naar een relationele database kan bijvoorbeeld elke wijziging in een tabel vastleggen.

In Kafka wordt de communicatie tussen de clients en de servers uitgevoerd met een eenvoudig, krachtig, taalonafhankelijk TCP-protocol . Dit protocol isversiept en onderhoudt compatibiliteit met eerdere versies met oudere versies. We bieden een Java-client voor Kafka, maar clients zijn beschikbaar in vele talen .

Kafka als een opslagsysteem
Elke berichtenwachtrij die het mogelijk maakt om berichten te publiceren die ontkoppeld zijn van het nuttigen ervan, fungeert feitelijk als een opslagsysteem voor de berichten tijdens de vlucht. Wat anders is aan Kafka is dat het een heel goed opslagsysteem is.

Gegevens die naar Kafka zijn geschreven, worden naar schijf geschreven en gerepliceerd voor fouttolerantie. Met Kafka kunnen producenten wachten op bevestiging, zodat een schrijfbewerking niet als voltooid wordt beschouwd totdat deze volledig is gerepliceerd en gegarandeerd blijft bestaan, zelfs als de server die is geschreven mislukt.

De schijfstructuren die Kafka op schaal goed gebruikt, zullen hetzelfde doen, of u nu 50 KB of 50 TB aan persistente gegevens op de server hebt.

Als gevolg van het serieus nemen van opslag en het mogelijk maken dat de klanten hun leespositie kunnen bepalen, kunt u Kafka zien als een soort gedistribueerd bestandssysteem voor speciale doelen dat is bedoeld voor krachtige logboekopslag, replicatie en propagatie met lage latentie.