Kiến trúc Kafka
Giới thiệu về Apache Kafka
Mike Metzger
Data Engineering Consultant
Thành phần Kafka
Máy chủ Kafka
Cụm gồm một hoặc nhiều máy tính
Lưu trữ dữ liệu
Quản lý giao tiếp
Có thể tích hợp hệ thống khác (cơ sở dữ liệu, log, v.v.)
Client Kafka
Đọc qua consumer
Ghi qua producer
Xử lý dữ liệu theo nhu cầu
Máy chủ Kafka
Lưu trữ, còn gọi là Kafka Broker
Dữ liệu do producer ghi được lưu và tổ chức theo topic
Topic được phân vùng, tức lưu thành các phần riêng
Thông điệp/sự kiện vào phân vùng dựa trên id sự kiện
Truy xuất thông điệp theo đúng thứ tự đã ghi
1
Hình từ https://kafka.apache.org/intro
Phân vùng & sao chép
Kafka chịu lỗi tốt
Nếu một hệ thống offline, hệ khác vẫn đáp ứng dữ liệu
Số lỗi tối đa = hệ số sao chép - 1
Hệ số sao chép tối đa = số máy chủ
Sao chép thực hiện bằng cách nhân bản phân vùng
Ví dụ
Cụm Kafka với 3 broker
Có 3 topic
Sao chép 2x == chịu lỗi 1 hệ thống
Broker 1 có bản sao Topic 1 & Topic 2
Broker 2 có bản sao Topic 2 & Topic 3
Broker 3 có bản sao Topic 1 & Topic 3
Mỗi topic được phân bố trên 2 broker trong cụm
Ví dụ với 1 lỗi
Broker 2 bị lỗi
Hệ số sao chép 2x
2 - 1 == chịu được 1 hệ thống lỗi
Mỗi topic vẫn còn ít nhất một bản sao trong cụm
Ví dụ với 2 lỗi
2 broker bị lỗi
Hệ số sao chép 2x
Số lỗi vượt mức hỗ trợ (1 hệ thống)
Topic 2 không còn khả dụng trong cụm
Topic 1 và 3 vẫn còn, nên không phải lỗi toàn bộ
Ayo berlatih!
Giới thiệu về Apache Kafka
Preparing Video For Download...