Schema Evolution(스키마 변경 관리)
새로운 필드가 추가되거나 기존 필드가 바뀌는 등 데이터 구조(스키마)가 시간이 지나며 바뀌어야 할 때, 이미 저장된 과거 데이터나 이를 사용하는 기존 시스템과의 호환성을 깨지 않도록 변화를 체계적으로 관리하는 것을 뜻합니다.
한눈에 보는 정의
Schema Evolution(스키마 변경 관리)은 데이터 구조(스키마)가 시간이 지나며 바뀌어야 할 때, 기존 데이터나 시스템과의 호환성을 깨지 않도록 관리하는 것을 뜻합니다.
자세히 알아보기
- 예문: "새 필드를 추가하면서도 기존 시스템이 오류 없이 계속 동작하도록, Schema Evolution 원칙에 따라 필수값이 아닌 선택값으로 필드를 추가했다."
- 새 필드를 추가할 때는 기존 데이터를 읽는 시스템이 오류를 내지 않도록 선택값으로 두거나 기본값을 지정하는 등, 어떻게 변경해야 이전 버전과 호환되는지에 대한 규칙을 따라야 합니다.
- Schema Registry(스키마 레지스트리) (Schema Registry)는 이런 변경이 실제로 기존 시스템을 깨뜨리지 않는지 자동으로 검증해, Schema Evolution을 안전하게 실행할 수 있도록 돕는 도구입니다.
- 관리가 소홀하면 스키마가 바뀌는 순간 여러 시스템이 동시에 오류를 일으키는 장애로 이어질 수 있어, 변경 이력을 남기고 단계적으로 적용하는 신중한 절차가 필요합니다.