สำหรับท่านที่สนใจการทำงาน ของ Elasticsearch กับ kafka และสงสัยว่ามันทำงานต่างกันอย่างไร ซึ่งโดยปกติแล้ว 2 service นี้ทำงานเกี่ยวกับเรื่อง big data ทั้งสอง
###Kafka
เริ่มต้นที่ส่วนการทำงานของ kafka คือเป็นตัวจัดการเรื่อง stream processing event queue หรือ messaging queue ลงใน แต่ละ topic และแต่ละ topic มีการเก็บส่วนของข้อมูลลงใน partition และยังสามารถทำการ replicate data synchronization ได้ เพื่อป้องกันการหายของข้อมูลที่วิ่งเข้ามาในระบบ อีกทั้งยังสามารถทำการ scale ได้ง่าย และทำการส่งต่อข้อมูลไปยัง application เพื่อประมวลผลต่อไป
ถ้าอยากเพิ่มเติมในส่วนของ monitoring tool ที่ใช้งานกับ kafka ก็สามารถใช้งานเป็น kafka manager ได้ครับ
https://github.com/yahoo/kafka-manager###Elasticsearch
แต่หลักการทำงานของ Elasticsearch คือจะเน้นเรื่องการค้นหาข้อมูล จาก event จำนวนมากที่มีในระบบ หรือค้นหากลุ่มคำที่เราต้องการ เพื่อนำมาวิเคราะห์ต่อ
ถ้านำมาเชื่อมต่อกัน สามารถทำในรูปแบบนี้ได้ครับ
Data -> Kafka -> Connector -> Elasticsearch
ได้ครับ
หรือสามารถดูรายละเอียดเพิ่มได้ที่นี่ ครับ
https://qbox.io/blog/kafka-and-elasticsearch-a-perfect-match-1