Skip to main content
이 문서는 머신러닝 섹션의 일부입니다.

모델 레지스트리란?

Model Registry(모델 레지스트리) 는 학습된 ML 모델의 버전을 관리 하고, 프로덕션 승격(Promotion)을 제어하는 중앙 저장소입니다. Databricks에서는 Unity Catalog 와 통합되어, 모델에도 테이블과 동일한 거버넌스(권한, 리니지, 감사)가 적용됩니다.

1. 왜 모델 레지스트리가 필요한가

모델 관리 없이 운영할 때의 문제

실제 ML 운영 현장에서 레지스트리 없이 모델을 관리하면 다음과 같은 문제가 반복적으로 발생합니다. 버전 혼란 (Version Chaos)
  • 파일 시스템에 model_v2_final_FINAL.pkl 같은 파일이 쌓입니다.
  • 어떤 파일이 실제 프로덕션에 배포된 것인지 확인할 방법이 없습니다.
  • 팀원이 실수로 구버전 모델을 배포하는 사고가 발생합니다.
재현 불가 (Non-reproducibility)
  • 6개월 후 “이 모델을 어떻게 학습했지?”라는 질문에 답하기 어렵습니다.
  • 어떤 데이터셋, 어떤 하이퍼파라미터로 학습했는지 추적이 끊깁니다.
  • 동일한 코드로 재학습해도 결과가 달라지는 환경 의존성 문제가 생깁니다.
감사 불가 (No Auditability)
  • 금융·의료 등 규제 산업에서는 “누가 이 모델을 승인했는가”를 입증해야 합니다.
  • 모델 변경 이력이 없으면 컴플라이언스(Compliance) 감사를 통과할 수 없습니다.
  • 인시던트(Incident) 발생 시 원인 추적이 불가능합니다.

2. Unity Catalog 기반 모델 레지스트리

Workspace 레지스트리에서 UC 레지스트리로의 전환

Databricks는 원래 Workspace Model Registry 를 제공했습니다. 이는 Workspace 범위 내에서만 동작하는 격리된 레지스트리였습니다. 2023년부터 Unity Catalog(UC) 기반 Model Registry 가 권장 방식이 되었으며, 이유는 다음과 같습니다.

3-Level Namespace (3단계 네임스페이스)

UC의 모든 오브젝트는 catalog.schema.object 형태의 3단계 네임스페이스를 사용합니다. 모델도 동일합니다.
모델의 전체 이름은 ml_catalog.fraud_detection.fraud_model 이 됩니다. 이 이름 하나로 버전 관리, 권한 부여, 리니지 추적이 모두 연결됩니다.

3. 모델 등록 방법

방법 1: 학습 중 직접 등록 (MLflow API)

방법 2: 기존 Run에서 사후 등록

방법 3: UI에서 등록

  1. Databricks 좌측 메뉴 → Experiments 진입
  2. 실험 Run 클릭 → Artifacts 탭 선택
  3. model 폴더 클릭 → Register Model 버튼 클릭
  4. 모델 이름을 catalog.schema.model_name 형식으로 입력
  5. Register 클릭 → 새 버전 자동 생성

방법 4: 자동 등록 (autolog)