Sa mundo ngayon, ang data ang pangunahing sangkap ng mga aplikasyon sa internet at karaniwang sumasaklaw sa mga sumusunod:
- Mga pagbisita sa pahina at pag-click
- Mga aktibidad ng gumagamit
- Mga kaganapan na naaayon sa mga pag-login
- Ang mga aktibidad sa social networking tulad ng mga gusto, pagbabahagi at mga komento
- Mga sukatan na tumutukoy sa application (hal. Mga tala, oras ng pag-load ng pahina, pagganap atbp.)
Ito maaaring magamit ang data upang magpatakbo ng analytics sa real time paghahatid ng iba`t ibang mga layunin, ang ilan sa mga ito ay:
- Paghahatid ng mga ad
- Pagsubaybay sa mga abnormal na pag-uugali ng gumagamit
- Nagpapakita ng paghahanap batay sa kaugnayan
- Nagpapakita ng mga rekomendasyon batay sa mga nakaraang aktibidad
Problema: Ang pagkolekta ng lahat ng data ay hindi madali dahil ang data ay nabuo mula sa iba't ibang mga mapagkukunan sa iba't ibang mga format
Solusyon: Isa sa mga paraan upang malutas ang problemang ito ay ang paggamit ng isang sistema ng pagmemensahe. Ang mga system ng pagmemensahe ay nagbibigay ng isang seamless na pagsasama sa pagitan ng mga ipinamamahagi na mga application sa tulong ng mga mensahe.
Apache Kafka:
Ang Apache Kafka ay isang ipinamahagi na mag-publish ng sistema ng pagmemensahe ng pag-subscribe na orihinal na binuo sa LinkedIn at kalaunan ay naging bahagi ng proyekto ng Apache. Ang Kafka ay mabilis, mabilis, nasusukat at ipinamamahagi ng disenyo.
Kafka Architecture at Terminology:
Paksa: Ang isang daloy ng mga mensahe na kabilang sa isang partikular na kategorya ay tinatawag na isang paksa
Tagagawa: Ang isang tagagawa ay maaaring maging anumang application na maaaring mag-publish ng mga mensahe sa isang paksa
Mamimili: Ang isang mamimili ay maaaring maging anumang application na mag-subscribe sa mga paksa at ubusin ang mga mensahe
Broker: Ang Kafka cluster ay isang hanay ng mga server, na ang bawat isa ay tinatawag na isang broker
malaking paglalarawan sa trabaho ng developer ng data
Ang Kafka ay nasusukat at pinapayagan ang paglikha ng maraming uri ng mga kumpol.
- Single Node Single Broker Cluster
- Single Node Multiple Broker Cluster
- Maramihang mga Node Maramihang Broker Cluster
Single Node Single Broker
Ano ang papel ng ZooKeeper?
Ang bawat Kafka broker ay nakikipag-ugnay sa iba pang mga Kafka broker na gumagamit ng ZooKeeper. Ang mga Producer at Consumer ay aabisuhan ng serbisyo ng ZooKeeper tungkol sa pagkakaroon ng mga bagong broker o pagkabigo ng broker sa sistemangKafka.
kung paano gamitin ang trim sa java
Single Node Maramihang Mga Broker
Maramihang mga Node Maramihang Mga Broker
Kafka @ LinkedIn
Ang LinkedIn Newsfeed ay pinalakas ng Kafka
Ang mga rekomendasyon ng LinkedIn ay pinalakas ng Kafka
Ang mga abiso sa LinkedIn ay pinalakas ng Kafka
Tandaan: Maliban dito, gumagamit ang LinkedIn ng Kafka para sa maraming iba pang mga gawain tulad ng pagsubaybay sa log, mga sukatan sa pagganap, pagpapabuti ng paghahanap, at iba pa.
Sino pa ang gumagamit ng Kafka?
DataSift: Gumagamit ang DataSift ng Kafka bilang isang kolektor ng mga kaganapan sa pagsubaybay at upang subaybayan ang pagkonsumo ng mga gumagamit ng mga stream ng data sa real time
Wooga: Gumagamit si Wooga ng Kafka upang pagsamahin at iproseso ang data ng pagsubaybay mula sa lahat ng kanilang mga laro sa Facebook (naka-host sa iba't ibang mga tagabigay) sa isang sentral na lokasyon
Spongecell: Gumagamit ang Spongecell ng Kafka upang patakbuhin ang buong analytics at pagsubaybay sa pipeline na nagmamaneho ng parehong real time at mga aplikasyon ng ETL
Loggly: Ang Loggly ay ang pinakatanyag na pamamahala ng log na nakabatay sa cloud. Gumagamit ito ng Kafka para sa koleksyon ng log.
Paghahambing na Pag-aaral: Kafka kumpara sa ActiveMQ kumpara sa RabbitMQ
Ang Kafka ay may isang mas mahusay na format ng imbakan. Sa isang average, ang bawat mensahe ay may overhead na 9 bytes sa Kafka, kumpara sa 144 bytes sa ActiveMQ
Sa parehong ActiveMQ at RabbitMQ, pinapanatili ng mga broker ang estado ng paghahatid ng bawat mensahe sa pamamagitan ng pagsulat sa disk ngunit sa kaso ng Kafka, walang disk magsulat, kaya't ginagawa itong mas mabilis.
Sa malawak na pag-aampon ng Kafka sa produksyon, mukhang isang promising solusyon ito para sa paglutas ng mga totoong problema sa mundo. Ang pagsasanay sa Apache Kafka ay maaaring makatulong sa iyo na mauna ang iyong mga kapantay sa isang real-time na karera sa analytics. Magsimula sa isang tutorial na Apache Kafka dito .
May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento at babalikan ka namin.
Mga Kaugnay na Post:
mga uri ng operator sa javascript
Ano ang kailangan mo para sa isang karera sa Real-Time Analytics