Back to Blog
Data ObservabilityMonte CarloAnomaly DetectionML

0x0B. Monte Carlo - ML로 데이터 이상을 자동 탐지하는 법

규칙 없이 데이터 이상을 잡는다? Monte Carlo의 비지도 학습 기반 탐지 방법론과 모니터 유형을 정리한다.

Monte Carlo란

Monte Carlo는 ML 기반 Data + AI Observability 플랫폼이다. 데이터 웨어하우스, 데이터 레이크, ETL, BI 도구 전반에 걸쳐 자동으로 데이터 이상을 탐지하고 알림을 제공한다.

이전 글에서 Data Observability의 개념과 5 Pillars를 다뤘다. 이번 글에서는 그 개념을 실제로 구현하는 대표 도구인 Monte Carlo를 살펴본다.

Monte Carlo의 핵심 차별점은 규칙을 수동으로 작성하지 않아도 된다는 것이다. 히스토리 패턴을 자동 학습하여 이상을 감지한다. Great Expectations나 Soda Core 같은 규칙 기반 도구와 근본적으로 다른 접근이다.

핵심 기능

ML 기반 자동 모니터링

데이터 환경의 과거 패턴을 자동 학습하여 비정상 동작을 지능적으로 감지한다. 복잡한 임계값 설정이나 검증 규칙 작성 없이, 베이스라인 기반으로 이상을 탐지한다.

이상 탐지(Anomaly Detection)

  • 메타데이터를 스캔하여 편차를 자동 감지
  • 베이스라인 기반 접근법으로 수동 임계값 설정 불필요
  • 파이프라인 장애, 데이터 이상 발생 시 자동 알림

데이터 리니지 & 카탈로그

  • 자동 필드 레벨 리니지 제공
  • 중앙집중식 데이터 카탈로그
  • 데이터 자산의 접근성, 위치, 건강 상태, 소유권 파악
  • 데이터 거버넌스 요구사항 준수 지원

Root Cause Analysis(RCA)

장애 발생 시 리니지를 활용하여 영향받은 업스트림/다운스트림 자산을 자동으로 파악하고, 근본 원인을 분석한다.

5 Pillars 커버리지

Monte Carlo는 Data Observability의 5대 축을 모두 커버한다.

Pillar설명탐지 예시
Freshness테이블 업데이트 주기"매일 오전 6시에 갱신되는 테이블이 12시간째 미갱신"
Volume행 수 변화"어제 대비 90% 적은 데이터 적재"
Distribution값 분포 이상"NULL 비율이 갑자기 40%로 증가"
Schema스키마 변경 추적"컬럼이 삭제되거나 타입이 변경됨"
Lineage데이터 흐름 경로"source A → transform B → table C 경로 추적"

모니터 유형

Monte Carlo의 모니터는 크게 세 가지 카테고리로 나뉜다.

1. Out-of-the-box ML 모니터

설정 없이 자동으로 동작하는 기본 모니터이다. 매시간 메타데이터 테이블을 스캔하며, 실제 데이터를 쿼리하지 않아 컴퓨팅 비용이 최소화된다.

모니터감시 대상동작 방식
Freshness테이블 업데이트 주기과거 업데이트 패턴을 학습하여 지연 탐지
Volume행 수 변화시계열 베이스라인 대비 비정상적 증감 탐지
Schema Changes스키마 변경컬럼 추가/삭제/타입 변경 감지

이 세 가지만으로도 기본적인 파이프라인 장애 대부분을 잡을 수 있다. 연결하면 바로 동작하기 때문에 초기 설정 비용이 거의 없다.

2. Custom ML 모니터

사용자가 스케줄을 지정하고, ML이 필드 수준에서 이상을 탐지한다. 실제 데이터를 쿼리하므로 더 깊은 품질 모니터링이 가능하다.

모니터설명
Field Health각 컬럼의 메트릭(NULL 비율, 고유값 수, 평균, 분포 등)을 수집하여 이상 감지
Dimension Tracking특정 차원(국가, 카테고리 등)별 행 수 변화를 추적
JSON SchemaJSON 필드의 스키마 준수 여부 감시(필수 필드, 타입 등)

예를 들어 Field Health 모니터는 user_id 컬럼의 고유값 비율이 100%에서 갑자기 50%로 떨어지면 "중복 데이터 의심" 인시던트를 생성한다. 이런 건 단순 행 수 모니터로는 잡기 어렵다.

3. Custom Rules 기반 모니터

ML을 사용하지 않고 사용자가 직접 규칙을 정의한다. 비즈니스 로직에 특화된 검증이 필요할 때 사용한다.

모니터설명
SQL Rules사용자 정의 SQL 쿼리로 조건 검증
Field Quality특정 필드의 값 범위, 패턴 등 검증
Referential Integrity테이블 간 참조 무결성 확인
Comparison Rules두 데이터셋 간 비교 검증

ML이 만능은 아니다. "이 컬럼의 값은 반드시 양수여야 한다"처럼 비즈니스 규칙이 명확한 경우에는 규칙 기반이 더 정확하다.

모니터 선택 전략

Monitor Strategy Spectrum

실무에서는 세 가지를 계층적으로 조합한다. 전체 테이블에 Out-of-the-box를 깔고, 중요한 테이블에 Custom ML을 추가하고, 핵심 비즈니스 규칙에 Custom Rules를 적용한다.

탐지 방법론: 비지도 학습

Monte Carlo의 ML 엔진은 비지도 학습(Unsupervised Learning) 기반이다. 라벨링된 데이터("이건 이상, 이건 정상") 없이 스스로 패턴을 학습한다.

동작 과정

1단계 — 베이스라인 학습

연결 시 과거 메타데이터(쿼리 로그, 정보 스키마, 통계)를 수집하여 "정상 상태"의 패턴을 학습한다.

2단계 — 시계열 모델링

Freshness, Volume 등은 시계열 데이터로 모델링한다. 주기성(일별, 주별)과 트렌드를 파악하여 "월요일 아침에는 원래 데이터가 적다"는 맥락을 이해한다.

3단계 — 편차 스코어링

새로운 데이터 포인트가 들어올 때 베이스라인 대비 편차를 계산한다. 임계값을 넘으면 인시던트를 생성한다.

4단계 — 자동 임계값 조정

ML이 지속적으로 학습하여 임계값을 자동 조정한다. 시간이 지날수록 false positive가 줄어든다. 필요하면 수동 임계값 설정도 가능하다.

메타데이터 기반의 의미

핵심은 실제 데이터를 복사하거나 저장하지 않는다는 점이다. 쿼리 로그, 정보 스키마, 테이블 통계만 읽기 전용으로 접근한다.

이 접근의 장점:

  • 보안: 민감한 데이터에 직접 접근하지 않음
  • 성능: 웨어하우스에 추가 부하를 주지 않음
  • 비용: 컴퓨팅 리소스 소비 최소화

아키텍처

Monte Carlo Architecture

에이전트리스(Agentless) 방식이다. 기존 인프라에 에이전트나 코드를 배포할 필요 없이, 웨어하우스의 정보 스키마와 쿼리 로그에 읽기 전용으로 연결한다. 도입 시 기존 파이프라인을 건드리지 않아도 된다.

다른 도구와의 비교

구분Monte CarloGreat ExpectationsElementarySoda Core
접근ML 자동 탐지규칙 기반 수동 검증dbt 네이티브 MLYAML 선언적 체크
설정최소(메타데이터 학습)Expectation 직접 작성dbt 프로젝트 내 설정SodaCL(YAML) 작성
비용상용 SaaS오픈소스(Core) / 상용(Cloud)오픈소스(OSS) / 상용(Cloud)오픈소스(Core) / 상용(Cloud)
강점실시간 모니터링, 리니지, RCA세밀한 검증 규칙, CI/CD 통합dbt 워크플로우 통합경량, SQL 불필요
적합대규모 플랫폼 전체 관측파이프라인 내 정밀 검증dbt 사용 팀빠른 품질 체크

Monte Carlo는 넓은 커버리지 + 자동화에 강하고, 나머지 도구는 특정 지점의 정밀 검증에 강하다. 실무에서는 Monte Carlo로 전체를 감시하면서, 핵심 테이블에 Great Expectations이나 Soda Core를 추가하는 하이브리드 전략이 일반적이다.

2025-2026 최신 동향

  • Agentic Observability: 자율 에이전트가 탐지에서 해결까지 자동 브릿지(인간 의사결정 보완)
  • 비정형 데이터 Observability: 문서, 챗 로그 등 비정형 자산 모니터링(AI/RAG 파이프라인용)
  • Data + AI Observability: 데이터 입력부터 AI 에이전트 출력까지 end-to-end 관측

Gartner 2026 Market Guide에서 Monte Carlo는 Data Observability 대표 벤더로 선정되었다. 데이터/AI 리더의 53%가 이미 Observability 도구를 도입했고, 43%가 18개월 내 도입을 예정하고 있다.

정리

Monte Carlo의 핵심은 세 가지다.

  1. 비지도 학습으로 자동 탐지: 규칙 없이 메타데이터 패턴을 학습하여 이상을 잡는다
  2. 에이전트리스 아키텍처: 기존 파이프라인을 건드리지 않고 메타데이터만 읽는다
  3. 계층적 모니터 전략: Out-of-the-box → Custom ML → Custom Rules로 커버리지와 정밀도를 모두 확보한다

"ML이 알아서 다 해준다"는 건 과장이다. 실무에서는 ML 자동 탐지로 넓게 깔고, 비즈니스 규칙이 명확한 곳에는 규칙 기반 검증을 추가하는 하이브리드 접근이 가장 효과적이다.

참고 자료