Nâng CaoKafka iconKafka

Schema Registry trong Kafka ecosystem là gì? Tại sao cần dùng Avro/Protobuf thay vì JSON?

Schema Registry (Confluent) là service lưu trữ và quản lý schema của Kafka message, đảm bảo producer và consumer đồng thuận về format dữ liệu.

  • JSON không có schema enforcement — producer có thể thay đổi field name/type mà không báo, khiến consumer bị lỗi.
  • Avro và Protobuf là binary serialization formats: nhỏ hơn JSON ~3-10x (giảm storage và network cost), có schema evolution với compatibility rules (BACKWARD, FORWARD, FULL).
  • Schema Registry lưu schema theo subject (mặc định là topic name), assign schema ID; message chỉ chứa schema ID (4 bytes) thay vì full schema, consumer lookup schema từ registry khi cần.
  • Khi thêm field mới với default value (BACKWARD compatible), consumer cũ vẫn deserialize được; xóa field hoặc đổi type là BREAKING change bị Schema Registry reject nếu cấu hình không cho phép.
  • Đây là best practice bắt buộc trong production Kafka cluster.

Xem toàn bộ Kafka cùng filter theo level & chủ đề con.

Mở danh sách Kafka