Kazalo:
Opredelitev - Kaj pomeni Apache Kafka?
Apache Kafka je sistem za sporočila z odprto kodo za objavo in naročanje, zasnovan za zagotavljanje hitrega, razširljivega in napak, odpornega na obdelavo virov v realnem času. Za razliko od klasične programske opreme za poslovna sporočila, Kafka lahko upravlja z vsemi podatki, ki tečejo skozi podjetje, in to v skoraj realnem času.
Kafka je napisana v Scali, prvotno pa jo je razvil LinkedIn. Od takrat so ga številna podjetja uporabila za izdelavo platform v realnem času.
Tehopedija razlaga Apače Kafka
Kafka ima veliko podobnosti z dnevniki transakcij in vzdržuje vire sporočil v temah. Proizvajalci zapisujejo podatke v teme, potrošniki pa berejo iz teh tem, ki so razdeljeni in kopirani na več vozlišč v porazdeljeni sistemski obliki. Kafka je edinstvena po tem, da vsako tematsko particijo obravnava kot dnevnik, vsakemu sporočilu v particiji pa dodeli edinstven odmik. Vsa sporočila hrani določen čas, potrošniki pa so odgovorni za sledenje njihove lokacije v vsakem dnevniku. To se razlikuje od prejšnjih sistemov, kjer so bili za to sledenje odgovorni posredniki, kar je močno povečalo sposobnost sistema, da se je število potrošnikov povečalo. Ta struktura omogoča Kafki podporo številnim potrošnikom in hranjenje velikih količin podatkov z zelo nizkimi stroški.
Kafka se lahko uporablja:
- Kot tradicionalni posrednik za sporočila
- Za sledenje dejavnosti spletnega mesta
- Za sestavljanje dnevnikov
- Za obdelavo velikih podatkovnih tokov
Kafka se lahko uporablja skupaj z Apache Storm, Apache HBase in Apache Spark za analizo v realnem času in upodabljanje pretočnih podatkov.