happytails.ai
Tiếng Việt

Bộ kiểm tra tương thích schema Avro

Kiểm tra schema Avro mới còn đọc được dữ liệu do schema cũ ghi hay không, hoặc ngược lại. Mọi trường, type và enum symbol cản trở tương thích đều được liệt kê kèm đường dẫn.

Nhận schema Avro dạng JSON, tối đa 1,000,000 ký tự mỗi schema, tối đa 50,000 giá trị JSON và 64 cấp lồng nhau. Chế độ chuyển tiếp nhận tối đa 50 phiên bản trước đó. Việc kiểm tra chạy trong worker nền của trình duyệt. Tệp tải xuống gồm báo cáo JSON và danh sách vấn đề CSV. Writer schema ở dạng JSON hoặc {"versions":[...]} với các schema cũ theo thứ tự từ cũ nhất cho chế độ transitive. Tối đa 1.000.000 ký tự. Kiểm tra cài đặt trước khi chạy.

Kết quả của bạn

Báo lỗi hoặc chia sẻ ý tưởng.

Bộ kiểm tra tương thích schema Avro
  1. Dán Avro schema cũ vào ô chính hoặc {"versions":[...]} cho chế độ transitive.
  2. Dán schema mới vào trường New schema.
  3. Chọn tương thích ngược, xuôi hoặc đầy đủ.
  4. Chạy kiểm tra và tải báo cáo JSON hoặc danh sách vấn đề CSV.

Điều cần biết

Nhận schema Avro dạng JSON, tối đa 1,000,000 ký tự mỗi schema, tối đa 50,000 giá trị JSON và 64 cấp lồng nhau. Chế độ chuyển tiếp nhận tối đa 50 phiên bản trước đó. Việc kiểm tra chạy trong worker nền của trình duyệt. Tệp tải xuống gồm báo cáo JSON và danh sách vấn đề CSV.

Chế độ

Tương thích ngược nghĩa là schema mới có thể đọc dữ liệu do schema cũ ghi, điều cần thiết khi nâng cấp consumer. Tương thích xuôi nghĩa là schema cũ có thể đọc dữ liệu do schema mới ghi. Kiểm tra đầy đủ xét cả hai chiều. Chế độ chuyển tiếp kiểm tra schema mới với mọi phiên bản trước đó bạn liệt kê, từ cũ nhất đến mới nhất, thay vì chỉ kiểm tra phiên bản mới nhất.

Quy tắc phân giải

Các kiểm tra tuân theo phần Schema Resolution trong đặc tả Avro 1.11: int được nâng thành long, float và double; long thành float và double; float thành double; string và bytes có thể nâng thành kiểu của nhau. Record khớp theo tên đầy đủ, tên không có package hoặc alias của reader. Trường mà reader có nhưng writer không có cần một default hợp lệ. Enum của reader cần mọi symbol của writer trừ khi có default. Mỗi nhánh trong writer union phải được reader giải quyết.

Giới hạn của phép kiểm tra

Đây là kiểm tra Avro schema resolution, không phải các quy tắc bổ sung của một schema registry cụ thể. Decimal logical type hợp lệ phải có precision và scale bằng nhau cho cả mã hóa bytes và fixed. Logical type không xác định hoặc không hợp lệ dùng Avro type nền. Union default được kiểm tra theo branch đầu tiên; default lồng nhau được kiểm tra đệ quy.

Bước tiếp theo