Schema Management
스키마란, 메시지의 형태와 구조를 정의한 것이에요. Kafka에서 유입되는 메시지와 소비되는 메시지의 형태를 일정하게 맞추는데 사용돼요.
Felice에서는 스키마 레지스트리에 새로운 스키마를 추가, 갱신, 삭제할 수 있는 스키마 관리 기능을 제공하고 있어요. 스키마 레지스트리 클러스터 목록 페이지에서 [스키마 관리] 버튼을 눌러 스키마 목록 페이지로 이동하세요.

새로운 스키마를 생성하려면, 스키마 목록 화면에서 [추가 설정] 메뉴를 열고 [스키마 생성] 버튼을 눌러 스키마 생성 모달을 열어주세요.

스키마 생성
스키마 생성에 필요한 정보를 모두 입력해주세요. 이때, 호환성 레벨과 스키마 데이터 구조는 변경 및 갱신할 수 있지만, 스키마 이름과 스키마 타입은 스키마 생성 이후에는 변경할 수 없음에 유의해주세요.

| 구분 | 설명 |
|---|---|
| ⓵ 스키마 이름 | 스키마 레지스트리 내에서 스키마를 구분하기 위한 고유한 주제(Subject)의 이름. 이를 통해 스키마를 식별 및 관리 |
| ⓶ 스키마 타입 | 데이터의 구조를 정의하는 방법을 결정 (AVRO | JSON | PROTOBUF) |
| ⓷ 호환성 레벨 | 스키마 갱신 시, 새로운 스키마가 기존 스키마와 호환되는지 여부를 정의 |
| ⓸ 스키마 데이터 구조 | 스키마 타입에 따른 데이터 구조 입력 |
스키마 갱신 시, 새로운 스키마와 기존 스키마의 호환 여부를 결정해요. 호환성 레벨은 스키마 생성 시 또는 상세 조회 > 설정 탭에서 설정할 수 있어요. 각 호환성 레벨 타입에 대한 자세한 내용은 호환성 레벨 타입 문서에서 다뤄요.
스키마 상세 조회
스키마 관리 페이지의 왼쪽에는 스키마 목록이 보여지고, 조회하고자 하는 스키마를 누르면 상세정보가 오른쪽 영역에 보여져요. 상세 정보에는 스키마 이름, 스키마 타입이 보여지고, 크게 2개의 탭(스키마, 설정)으로 구성되어 있어요.

스키마 탭
스키마의 버전 목록과 스키마 ID, 데이터 구조를 조회할 수 있어요. 해당 탭에서 특정 버전의 스키마를 삭제하거나, 스키마를 갱신할 수 있어요.

설정 탭
스키마의 호환성 레벨을 조정하거나, 해당 스키마의 모든 버전을 삭제할 수 있어요.

스키마 갱신
기존 버전 스키마의 수정은 공식적으로 지원하지 않아요. 대신, 새로운 버전의 스키마를 등록해서 스키마를 갱신할 수 있어요. 이를 스키마 진화(Schema Evolution)라고 표현해요.
스키마 상세조회 > 스키마 탭의 [수정] 버튼을 눌러 스키마 수정 모드로 진입하세요. 호환성 레벨에 적합하게 스키마 정보를 수정한 뒤, [스키마 갱신] 버튼을 누르면 새로운 버전의 스키마로 갱신돼요.

스키마 갱신 후, 스키마 상세조회 > 스키마 탭에서 원하는 버전의 스키마를 선택하여 이전 버전의 스키마와 새로운 버전의 스키마를 모두 조회할 수 있어요.
스키마 갱신 시, 호환성 레벨에 따라 허용된 필드 변경 사항이 다르기 때문에, 호환성 레벨과 변경한 사항이 적합하지 않다면 스키마 갱신에 실패할 수 있어요. 호환성 레벨 타입 문 서를 참고하여, 허용된 필드 변경을 미리 확인해주세요.
스키마 삭제
특정 버전의 스키마만 삭제하거나, 스키마의 모든 버전을 삭제할 수 있어요.
특정 버전의 스키마를 삭제
먼저, 스키마 목록에서 삭제를 원하는 스키마를 선택해주세요. 그 다음, 상세 조회 > 스키마 탭에서 원하는 버전을 선택한 뒤 [삭제] 버튼을 눌러 스키마 버전 삭제 모달을 열어주세요.

스키마 이름과 버전을 확인하고, 스키마 버전 삭제에 대한 경고 문구를 확인한 뒤, [삭제] 버튼을 눌러 스키마 버전 삭제를 완료해주세요.

스키마의 모든 버전을 삭제
먼저, 스키마 목록에서 삭제를 원하는 스키마를 선택해주세요. 그 다음, 상세조회 > 설정 탭에서 스키마 삭제 영역의 [삭제] 버튼을 눌러 스키마 삭제 모달을 열어주세요.

스키마 이름을 확인하고, 스키마 삭제에 대한 경고 문구를 확인한 뒤, [삭제] 버튼을 눌러 스키마 삭제를 완료해주세요.

전역 설정
스키마 목록 화면에서 [추가 설정] 메뉴를 열고 [전역 설정] 버튼을 눌러 전역 설정 모달을 열어주세요. 전역 설정 모달에서는 스키마 레지스트리 클러스터에서 전역적으로 설정을 적용할 수 있어요. 각각의 항목을 설정한 뒤, 저장 버튼을 눌러 적용할 수 있어요.

최근 스키마 내보내기
스키마 목록 화면에서 [추가 설정] 메뉴를 열고 [내보내기] 버튼을 눌러 스키마 내보내기 모달을 열어주세요. 그 다음, [내보내기] 버튼을 누르면 가장 최신 버전의 스키마가 JSON 파일로 다운로드돼요.
