API Server & luồng xử lý entity
API Server là thành phần trung tâm của OpenMetadata — mọi tương tác (UI, ingestion, tích hợp ngoài) đều đi qua nó. Thiết kế REST, schema-first, tách lớp phục vụ khỏi lưu trữ.
Hai lớp xử lý
Phần tiêu đề “Hai lớp xử lý”- EntityResource: nhận lệnh HTTP, kiểm tra request (body, header), trả response.
- EntityRepository (DAO): chứa logic nghiệp vụ ghi/đọc entity.
Vòng đời tạo entity (POST)
Phần tiêu đề “Vòng đời tạo entity (POST)”- Prepare — kiểm định dữ liệu entity, tính các thuộc tính phía server (vd sinh FQN theo phân cấp).
- Store — lưu JSON vào bảng entity + ghi quan hệ vào bảng đồ thị quan hệ.
Tạo-hoặc-cập-nhật (PUT)
Phần tiêu đề “Tạo-hoặc-cập-nhật (PUT)”PUT mở rộng POST:
- Truy vấn theo FQN xem entity đã tồn tại chưa.
- Set Fields — chỉ áp các thuộc tính có thể đổi (id, name là bất biến).
- Update — cập nhật trường chung (description, owner) + logic riêng theo entity, rồi ghi lại JSON.
Sự kiện thay đổi
Phần tiêu đề “Sự kiện thay đổi”Mỗi thay đổi sinh change event (ghi vào bảng change_event) thông qua ChangeEventHandler — nền tảng cho versioning, webhook & thông báo.