A mai világban, az adatok a fő összetevők internetes alkalmazások széles körét, és általában a következőket foglalja magában:
- Oldallátogatások és kattintások
- Felhasználói tevékenységek
- A bejelentkezéseknek megfelelő események
- Közösségi hálózati tevékenységek, például kedvelések, megosztás és megjegyzés
- Alkalmazás-specifikus mutatók (pl. Naplók, oldal betöltési ideje, teljesítmény stb.)
Ez adatok felhasználhatók az analitika valós idejű futtatására különféle célokat szolgál, amelyek közül néhány:
- Hirdetések kézbesítése
- A rendellenes felhasználói viselkedés nyomon követése
- A keresés megjelenítése relevancia alapján
- A korábbi tevékenységeken alapuló ajánlások megjelenítése
Probléma: Az összes adat összegyűjtése nem könnyű, mivel az adatokat különféle forrásokból, különböző formátumokban generálják
Megoldás: A probléma megoldásának egyik módja az üzenetkezelő rendszer használata. Az üzenetkezelő rendszerek zökkenőmentes integrációt biztosítanak az elosztott alkalmazások között az üzenetek segítségével.
Apache Kafka:
Az Apache Kafka egy elosztott közzétételi előfizetéses üzenetküldő rendszer, amelyet eredetileg a LinkedIn-n fejlesztettek ki, majd később az Apache projekt részévé vált. A Kafka gyors, mozgékony, méretezhető és terv szerint elosztott.
Kafka építészet és terminológia:
Téma: Egy adott kategóriába tartozó üzenetekfolyamát témának nevezzük
Termelő : Gyártó lehet bármilyen alkalmazás, amely üzeneteket tud közzétenni egy témában
Fogyasztó : Fogyasztó lehet bármilyen alkalmazás, amely feliratkozik a témákra és elfogyasztja az üzeneteket
Bróker : A Kafka-fürt egy szerverek összessége, amelyek mindegyikét brókernek hívják
módok szingleton osztály létrehozására Java-ban
A Kafka méretezhető és lehetővé teszi többféle klaszter létrehozását.
- Single Node Single Broker klaszter
- Egycsomópontos több bróker klaszter
- Több csomópont Több bróker klaszter
Single Node Single Broker
Mi a ZooKeeper szerepe?
Minden Kafka bróker együttműködik más Kafka brókerekkel a ZooKeeper használatával. A gyártókat és a fogyasztókat a ZooKeeper szolgálata értesíti új brókerek jelenlétéről vagy a bróker kudarcáról a Kafka rendszerben.
Egycsomópontos több bróker
Több csomópont Több bróker
Kafka @ LinkedIn
A LinkedIn Newsfeed-et a Kafka üzemelteti
A LinkedIn ajánlásait a Kafka hajtja
A LinkedIn értesítéseit a Kafka biztosítja
Jegyzet: Ettől eltekintve a LinkedIn a Kafka-t számos egyéb feladatra használja, például naplófigyelésre, teljesítménymutatókra, keresés fejlesztésére.
Ki használja még Kafkát?
DataSift: A DataSift a Kafkát használja az események megfigyelésének gyűjtőjeként és a felhasználók valós idejű fogyasztásának nyomon követésére
Wooga: A Wooga a Kafka segítségével összesíti és feldolgozza az összes (különböző szolgáltatóknál tárolt) Facebook-játék nyomkövetési adatait egy központi helyen
Piskóta: A Spongecell a Kafka segítségével futtatja teljes elemzését és nyomon követési folyamatát, mind a valós idejű, mind az ETL alkalmazásokat hajtva
Loggly: A Loggly a világ legnépszerűbb felhőalapú naplókezelése. A Kafka-t használja a rönkgyűjtéshez.
Összehasonlító tanulmány: Kafka vs. ActiveMQ vs. RabbitMQ
A Kafka hatékonyabb tárolási formátummal rendelkezik. Átlagosan az egyes üzenetek 9 bájtos rezsivel rendelkeznek Kafkában, szemben az 144 bájttal az ActiveMQ-ban.
Mind az ActiveMQ, mind a RabbitMQ esetében a brókerek minden üzenet kézbesítési állapotát lemezre írva tartják fenn, de a Kafka esetében nincs lemezírás, így gyorsabbá válik.
A Kafka széles körű bevezetésével a termelésben ígéretes megoldásnak tűnik a valós problémák megoldására. Az Apache Kafka képzés segíthet abban, hogy megelőzze társait a valós idejű elemzői karrier során. Kezdje el az Apache Kafka oktatóanyaggal itt .
Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben, és kapcsolatba lépünk Önnel.
Kapcsolódó hozzászólások: