5장. MAM 시스템 설계
MAM의 개념과 분류, 전체 아키텍처, 인제스트·메타데이터·검색·스토리지 설계, 워크플로우와 외부 연동(MOS 등)까지 MAM을 설계할 때 결정해야 할 사항을 정리합니다.
앞 장까지는 영상 파일 자체를 다뤘습니다. 이제부터는 파일을 수천, 수만 개 다루는 시스템의 이야기입니다. MAM을 설계한다는 것은 결국 다음 질문들에 답하는 일입니다.
- 파일은 어떻게 들어오고(인제스트), 들어온 파일이 정상인지 어떻게 확인하는가
- 파일에 대한 정보(메타데이터)를 어떤 구조로 저장하는가
- 사용자가 원하는 영상을 어떻게 찾게 하는가
- 파일을 어디에, 어떤 성능으로 저장하는가
- 변환·검사·배포 같은 작업을 누가, 어떤 순서로 실행하는가
- 편집 시스템, 송출 시스템 같은 외부 시스템과 어떻게 연결하는가
이 장에서는 위 질문을 차례로 다루고, 직접 실행해서 확인할 수 있는 예제(파일 안정성 검사, 메타데이터 스키마, 한국어 검색 인덱스, 스토리지 용량 계산)를 함께 제시합니다.
- MAM이란 무엇인가: 개념, 용어, 분류
- 전체 아키텍처
- 인제스트 설계
- 메타데이터 모델
- 검색 설계
- 스토리지 설계
- 워크플로우와 외부 연동
- 5.1MAM이란 무엇인가 - 개념, 용어, 분류Media Asset Management의 정의와 목적, MAM·DAM·CMS·PAM·NPS·APC 같은 유사 용어의 구분, 규모·목적·벤더에 따른 분류와 도입 효과를 정리합니다.
- 5.2MAM 전체 아키텍처클라이언트, API, 워크플로우 엔진, 작업 워커, 메타데이터 DB와 검색 엔진, 스토리지 계층, 외부 연동으로 구성되는 MAM의 논리 구조와 설계 원칙을 설명합니다.
- 5.3인제스트 설계 - 입력 유형, 완결성, 체크섬, 정규화테이프·카드·라이브·파일 전송 등 인제스트 입력 유형별 설계, 감시 폴더에서 쓰기 완료를 판단하는 방법(실험 결과), 체크섬 검증과 표준 포맷 정규화, 실패 처리를 설명합니다.
- 5.4메타데이터 모델 - 소재, 파일, 구간을 어떻게 저장할까기술·서술·구조·관리 메타데이터의 구분, 소재-파일-구간 계층 모델, 관계형 스키마 예제(SQLite로 검증), 통제 어휘와 표준 스키마(EBUCore 등) 활용을 설명합니다.
- 5.5검색 설계 - 한국어 전문 검색과 인덱싱 파이프라인MAM 검색 요구사항, DB와 검색 엔진의 동기화, 한국어 검색에서 기본 토크나이저가 실패하는 이유와 n-gram 인덱스의 한계를 SQLite FTS5 실험으로 설명하고, 형태소 분석과 구간 검색 설계를 다룹니다.
- 5.6스토리지 설계 - DAS, NAS, SAN과 용량·성능 산정DAS·NAS·SAN과 RAID, 오브젝트 스토리지의 특징, 동시 편집 스트림 수와 비트레이트로 필요한 처리량을 계산하는 방법, 원본·프록시·아카이브 계층 구성 원칙을 설명합니다.
- 5.7워크플로우와 외부 연동 - 작업 큐, 상태 머신, MOS 프로토콜작업 큐의 원자적 선점과 재시도·상태 설계(동시 워커 실험), REST API 설계 원칙, 뉴스룸 연동 프로토콜 MOS의 구조(포트, 메시지, ACK)와 편집·송출 연동 방식을 정리합니다.