다음을 통해 공유


이상 탐지

중요합니다

이 기능은 공개 미리보기 단계에 있습니다.

이 페이지는 이상 탐지가 무엇인지, 무엇을 모니터링하는지, 그리고 어떻게 사용하는지 설명합니다.

중요합니다

변칙 검색은 기본 스토리지 를 사용하여 검사 결과를 system.data_quality_monitoring.table_results 시스템 테이블에 저장합니다. 이 스토리지에 대한 요금은 청구되지 않습니다.

이상 탐지란?

변칙 검색을 사용하면 스키마의 모든 테이블에서 데이터 품질을 모니터링할 수 있습니다. 기록 패턴을 분석하여 Azure Databricks 각 테이블의 완전성과 새로 고침을 자동으로 평가합니다. 결과는 카탈로그 탐색기에서 사용할 수 있습니다.

요구 사항

  • Unity 카탈로그가 활성화된 작업 영역.
  • 서버리스 컴퓨팅 은 작업 영역에서 사용할 수 있어야 합니다(Unity 카탈로그를 사용하는 작업 영역에서 기본적으로 사용).
  • 스키마에 이상 탐지를 활성화하려면 카탈로그 스키마에 대한 "관리" SCHEMA 또는 "관리" CATALOG 권한이 있어야 합니다.
  • 테이블의 상태 표시기 상태를 보려면 SELECT 권한 또는 BROWSE 권한이 필요합니다.

이상 탐지는 어떻게 작동하나요?

Azure Databricks는 테이블의 신선도완료성을 모니터링하는 백그라운드 작업을 만듭니다.

새로 고침 은 테이블이 얼마나 최근에 업데이트되었는지를 나타냅니다. 데이터 품질 모니터링은 테이블에 대한 커밋 기록을 분석하고 테이블별 모델을 빌드하여 다음 커밋 시간을 예측합니다. 커밋이 비정상적으로 늦으면 테이블이 부실로 표시됩니다.

완전성은 지난 24시간 동안 테이블에 기록될 것으로 예상되는 행 수를 나타냅니다. 데이터 품질 모니터링은 기록 행 수를 분석하고 이 데이터를 기반으로 예상 행 수를 예측합니다. 지난 24시간 동안 커밋된 행 수가 이 범위의 하한보다 작으면 테이블이 불완전한 것으로 표시됩니다.

Azure Databricks 지능형 검사를 사용하여 테이블 스캔 빈도를 자동화합니다. 지능형 검색은 인기도 및 다운스트림 사용량에 따라 결정되는 영향력이 높은 테이블의 우선 순위를 지정하고 덜 중요한 테이블에 대한 빈도를 줄입니다. 테이블을 수동으로 제외하려면 모니터 만들기 또는 모니터 업데이트 API를 사용하고 매개 변수에서 excluded_table_full_names 제외된 테이블을 지정합니다. 자세한 내용은 API 설명서를 참조하세요.

변칙 검색 모니터링하는 테이블을 수정하지 않으며 이러한 테이블을 채우는 작업에 오버헤드를 추가하지도 않습니다.

메모

이벤트 시간 열 및 수집 대기 시간을 기반으로 하는 이벤트 새로 고침은 데이터 품질 모니터링 베타 버전의 사용자만 사용할 수 있었습니다. 현재 버전에서는 이벤트 새로 고침이 지원되지 않습니다.

완료도에 대한 백분율 null

중요합니다

이 기능은 베타 버전으로 제공됩니다. 작업 영역 관리자는 미리 보기 페이지에서 이 기능에 대한 액세스를 제어할 수 있습니다. Azure Databricks 미리 보기 관리 참조하세요.

백분율 null은완성도에 추가 품질 세부 정보를 추가합니다. 백분율 null은 지정된 열에 대해 null 값이 있을 것으로 예상되는 지난 24시간 동안 테이블에 기록된 행의 백분율입니다. 데이터 품질 모니터링은 각 열의 기록 추세를 분석하고 이 데이터를 기반으로 범위를 예측합니다. 지난 24시간 동안 열의 null 퍼센트가 이 범위의 상한선을 초과하면, 테이블이 불완전한 것으로 표시됩니다.

스키마에서 이상 탐지 사용

스키마에서 변칙 검색을 사용하도록 설정하려면 Unity 카탈로그의 스키마로 이동합니다.

  1. 스키마 페이지에서 세부 정보 탭을 클릭합니다.

    카탈로그 탐색기의 스키마 페이지에 대한 세부 정보 탭입니다.

  2. 활성화를 클릭합니다. 데이터 품질 모니터링 대화 상자에서 변칙 검색이 설정되었는지 확인하고 저장을 클릭합니다.

  3. 검사가 시작됩니다. Databricks는 업데이트된 동일한 빈도로 각 테이블을 자동으로 검사하여 각 테이블에 대해 수동 구성을 요구하지 않고도 up-to-date 인사이트를 제공합니다. 2025년 9월 24일 이전에 사용하도록 설정된 스키마의 경우 Databricks는 첫 번째 검사에서 기록 데이터("백테스팅")에서 모니터를 실행하여 2주 전에 스키마에서 데이터 품질 모니터링을 사용하도록 설정한 것처럼 테이블의 품질을 확인했습니다.

  4. 검사가 완료되면 다음과 같은 방법으로 테이블에 대한 변칙 검색 결과를 볼 수 있습니다.

이상 탐지 사용 안 함

이상 탐지를 사용하지 않도록 설정하려면 다음을 수행합니다.

  1. 연필 아이콘을 클릭합니다.

    세부 정보 탭의 고급 필드의 연필 아이콘입니다.

  2. 데이터 품질 모니터링 대화 상자에서 토글을 클릭합니다.

    중요합니다

    변칙 검색을 사용하지 않도록 설정하면 변칙 검색 작업과 모든 변칙 검색 테이블 및 정보가 삭제됩니다. 이 작업은 취소할 수 없습니다.

    데이터 품질 모니터링 대화 상자에서 스위치를 전환합니다.

  3. 저장을 클릭합니다.

건강 지표

스키마에서 변칙 검색을 사용하도록 설정하면 상태 표시기가 카탈로그 탐색기의 스키마 및 테이블 개요 페이지에 표시됩니다. 상태 표시기는 데이터 품질 모니터링 UI로 이동할 필요 없이 데이터 소비자 및 비즈니스 사용자의 테이블 상태 요약을 보여 줍니다. 사용자가 상태 표시를 보려면 SELECT 권한 또는 BROWSE 권한이 필요합니다.

스키마의 테이블에 대한 상태 표시기입니다.

다음 표에서는 각 상태 표시기 상태를 설명합니다.

상태 설명
Healthy 가장 최근의 검사에서 모든 변칙 검사가 성공적으로 통과되었습니다.
건강에 해로운 하나 이상의 검사에서 신선도 또는 완전성 문제와 같은 이상 현상이 감지되었습니다.
교육 이상 탐지는 역사적 데이터로부터 기준 모델을 구축하는 것입니다. 새로 모니터링된 테이블은 모델에 품질을 평가하기에 충분한 데이터가 있을 때까지 이 상태를 표시합니다.
오류 이 테이블을 모니터링하는 동안 이상 탐지 중 오류가 발생했습니다.
제외 테이블은 변칙 검색에서 명시적으로 제외됩니다.
사용 안 함 이 테이블을 포함하는 스키마에서는 변칙 검색을 사용할 수 없습니다.

메모

스마트 스캐닝은 초기 검사를 통해 테이블이 건너뛰어진 경우, 일부 테이블의 건강 지표 채우기가 최대 2주까지 지연될 수 있습니다. 다음 예약된 다시 검사에서 상태 표시기가 채워집니다.

UI에서 데이터 품질 모니터링 결과 보기

중요합니다

2025년 10월 7일, Databricks는 새 버전의 데이터 품질 모니터링 UI를 릴리스했습니다. 해당 날짜 또는 그 이후에 데이터 품질 모니터링을 사용하도록 설정된 스키마는 이 새 UI를 자동으로 사용합니다. 이 섹션에서는 이 최신 버전의 UI에 대해 설명합니다.

레거시 UI에 대한 자세한 내용은 데이터 품질 대시보드(레거시)를 참조하세요.

Databricks는 모든 기존 스키마에 대해 새 버전을 사용하도록 설정하는 것이 좋습니다.

새 버전을 사용하도록 설정하려면 데이터 품질 모니터링 토글을 클릭하여 기능을 끈 다음 다시 클릭하여 다시 켭니다.

스키마에서 데이터 품질 모니터링을 사용하도록 설정한 후 결과 보기를 클릭하여 결과 페이지를 열 수 있습니다. 카탈로그 탐색기에서 모니터링을 사용하도록 설정된 모든 스키마의 결과에 액세스할 수도 있습니다.

결과 UI에는 카탈로그 및 스키마 드롭다운이 포함됩니다. 카탈로그를 선택하면 스키마 드롭다운이 데이터 품질 모니터링을 사용하도록 설정된 해당 카탈로그의 스키마로 채워집니다.

  • 카탈로그에 대한 관리 또는 SELECT 권한이 있는 경우 카탈로그 수준에서 인시던트 보기를 수행할 수 있습니다. 카탈로그의 모든 인시던트를 보려면 스키마 드롭다운 메뉴에서 모든 스키마를 선택합니다.

    스키마 드롭다운 메뉴에서 모든 스키마를 선택합니다.

  • 특정 스키마에 대한 인시던트를 보려면 해당 스키마에 대한 관리 또는 SELECT 권한도 있어야 합니다. 그런 다음 스키마를 선택하면 해당 스키마에 대한 인시던트만 표시됩니다.

결과 페이지에는 정상 테이블의 백분율과 현재 모니터링되는 스키마/테이블의 백분율을 포함하여 선택한 범위에 대한 전체 데이터 품질을 표시하는 요약 섹션이 맨 위에 표시됩니다. 이 섹션 아래에는 선택한 범위에서 모니터링되는 모든 테이블의 인시던트를 나열하는 테이블이 있습니다. 단추를 사용하여 비정상, 정상 또는 오류 테이블을 표시합니다.

요약, 중요한 인시던트 및 모든 인시던트 탭을 보여 주는 인시던트 UI입니다.

다음 표는 비정상, 정상, 또는 오류를 선택할 때 다소 다른 열에 대해 설명합니다.

칼럼 설명
상태 Healthy, Unhealthy 또는 Training.
처음 검색됨 첫 번째 인시던트가 감지된 경우입니다. 비정상 탭에만 나타납니다.
마지막으로 스캔한 시간 테이블을 마지막으로 스캔한 경우입니다. 정상 탭에만 나타납니다.
Reason 테이블이 데이터의 최신 상태 또는 완전성 부족으로 인해 비정상적인지 여부입니다. 비정상 탭에만 나타납니다.
근본 원인 문제에 기여하는 업스트림 작업에 대한 정보입니다(자세한 내용은 변칙 검색 기록 결과 검토 참조). 비정상 탭에만 나타납니다.
영향 영향을 받는 다운스트림 테이블 및 쿼리 수에 따라 다운스트림 영향(높음, 중간 또는 음)의 정성적 측정값입니다.
스캔 빈도 지난 주에 테이블이 스캔된 빈도입니다.
결과 변칙이 검색된 이유를 설명하는 기록 추세 및 시각화를 볼 수 있는 테이블 품질 페이지에 대한 링크입니다.
오류 상태 오류 메시지입니다. 오류 탭에만 나타납니다.
세부 정보 오류 메시지에 대한 세부 정보입니다. 오류 탭에만 나타납니다.

메타스토어 수준 결과 보기

이 섹션에서는 작업 영역으로 가져올 수 있는 템플릿을 제공합니다. 이 템플릿은 메타스토어 전체에서 모든 품질 결과를 볼 수 있는 대시보드를 만듭니다.

이 템플릿을 사용하려면 테이블에 대한 액세스 권한이 system.data_quality_monitoring.table_results 있어야 합니다. 기본적으로 계정 관리자만 이 테이블에 액세스할 수 있습니다. 필요에 따라 다른 사용자에게 액세스 권한을 부여할 수 있습니다.

템플릿을 사용하는 방법

아래 단계를 수행하세요.

  1. 템플릿 파일을 다운로드합니다. metastore-quality-dashboard.lvdash.json.
  2. 작업 영역 사이드바에서 대시보드 아이콘대시보드를 클릭합니다.
  3. 오른쪽 위 모서리의 대시보드 만들기 드롭다운 메뉴에서 파일에서 대시보드 가져오기를 선택합니다.
  4. 대화 상자에서 파일 선택을 클릭하고 템플릿 파일로 이동한 다음 대시보드 가져오기를 클릭합니다.

파일을 가져오고 대시보드가 나타납니다.

메타스토어 수준 데이터 품질 대시보드의 예입니다.

테이블 품질 세부 정보

테이블 품질 세부 정보 UI를 사용하면 추세를 자세히 살펴보고 스키마의 특정 테이블에 대해 변칙이 검색된 이유를 이해할 수 있습니다. 이 보기는 다음과 같은 여러 가지 방법으로 액세스할 수 있습니다.

  • 결과 UI(새 환경)에서 인시던트 목록의 검토 링크를 클릭합니다.
  • 모니터링 대시보드 (레거시 Lakeview 대시보드)에서, 품질 개요 탭의 테이블 이름을 클릭하여.
  • UC 테이블 뷰어에서 테이블 페이지의 품질 탭을 방문합니다.

모든 옵션을 선택하면 선택한 테이블에 대해 동일한 테이블 품질 세부 정보 보기로 이동됩니다.

테이블이 지정된 경우 UI는 각 평가 타임스탬프에서 예측 및 관찰된 값의 그래프와 함께 테이블에 대한 각 품질 검사의 요약을 표시합니다. 그래프는 지난 1주 동안의 데이터 결과를 표시합니다.

이상 탐지를 위한 테이블 품질 세부사항 UI입니다.

테이블이 품질 검사에 실패한 경우 UI는 근본 원인으로 식별된 업스트림 작업도 표시합니다.

테이블 품질 세부 정보 UI 근본 원인 테이블입니다.

경고 설정

출력 결과 테이블에서 Databricks SQL 경고를 구성하려면 변칙 검색에 대한 경고를 참조하세요.

제한점

  • 이상 탐지는 뷰 또는 외부 테이블을 지원되지 않습니다.
  • 완전성 결정은 null, 0 값 또는 NaN의 분수와 같은 메트릭을 고려하지 않습니다.

레거시 이상 탐지

다음 섹션에서는 데이터 품질 대시보드 및 변칙 검색 작업 구성이라는 두 가지 레거시 기능을 다룹니다. 현재 버전의 이상 탐지에는 이러한 기능이 들어있지 않습니다. 대시보드가 데이터 품질 모니터링 결과 UI로 대체되었습니다.

데이터 품질 대시보드(레거시)

데이터 품질 대시보드(레거시)

메모

데이터 품질 모니터링 대시보드는 레거시 사용자만 사용할 수 있었습니다. 현재 버전에서는 UI에서 데이터 품질 모니터링 결과 보기를 사용합니다.

첫 번째 데이터 품질 모니터 실행은 로깅 테이블에서 파생된 결과와 추세를 요약하는 대시보드를 만듭니다. 대시보드는 검색된 스키마에 대한 인사이트를 사용하여 자동으로 채워집니다. 다음 경로 /Shared/Databricks Quality Monitoring/Data Quality Monitoring에서 작업 영역당 단일 대시보드가 만들어집니다.

품질 개요

품질 개요 탭에는 가장 최근 평가에 따라 스키마에 있는 테이블의 최신 품질 상태에 대한 요약이 표시됩니다.

시작하려면 분석하려는 스키마에 대한 로깅 테이블을 입력하여 대시보드를 채워야 합니다.

대시보드의 위쪽 섹션에는 검사 결과에 대한 개요가 표시됩니다.

대시보드의 품질 개요 탭에 있는 데이터 품질 모니터 스키마 요약입니다.

요약 아래에는 영향별로 품질 인시던트를 나열한 테이블이 있습니다. root_cause_analysis 열에 식별된 근본 원인이 표시됩니다.

대시보드의 품질 개요 탭에 영향을 주는 품질 인시던트입니다.

품질 인시던트 테이블 아래에는 오랫동안 업데이트되지 않은 식별된 정적 테이블 테이블이 있습니다.

새로 고침 및 완전성 평가(레거시)에 대한 매개 변수 설정

새로 고침 및 완전성 평가(레거시)에 대한 매개 변수 설정

메모

2025년 7월 21일부터 새 고객에게 작업 매개 변수 구성이 지원되지 않습니다. 작업 설정을 구성해야 하는 경우 Databricks에 문의하세요.

작업 실행 빈도 또는 기록된 결과 테이블의 이름과 같이 작업을 제어하는 매개 변수를 편집하려면 작업 페이지의 작업 탭에서 작업 매개 변수를 편집해야 합니다.

이상 탐지 작업을 보여주는 Job 페이지입니다.

다음 섹션에서는 특정 설정에 대해 설명합니다. 작업 매개 변수를 설정하는 방법에 대한 자세한 내용은 작업 매개 변수 구성을 참조하세요.

일정 및 알림(레거시)

작업의 일정을 사용자 지정하거나 알림을 설정하려면 작업 페이지에서 일정 및 트리거 설정을 사용합니다. 일정 및 트리거를 사용하여 작업 자동화를 참조하세요.

로깅 테이블의 이름(레거시)

로깅 테이블의 이름을 변경하거나 다른 스키마에 테이블을 저장하려면 작업 작업 매개 변수 logging_table_name 를 편집하고 원하는 이름을 지정합니다. 로깅 테이블을 다른 스키마에 저장하려면 전체 3단계 이름을 지정합니다.

freshnesscompleteness 평가 사용자 지정(레거시)

이 섹션의 모든 매개 변수는 선택 사항입니다. 기본적으로 변칙 검색은 테이블 기록 분석을 기반으로 임계값을 결정합니다.

이러한 매개 변수는 작업 매개 변수 metric_configs내의 필드입니다. 형식 metric_configs 은 다음 기본값이 있는 JSON 문자열입니다.

[
  {
    "disable_check": false,
    "tables_to_skip": null,
    "tables_to_scan": null,
    "table_threshold_overrides": null,
    "table_latency_threshold_overrides": null,
    "static_table_threshold_override": null,
    "event_timestamp_col_names": null,
    "metric_type": "FreshnessConfig"
  },
  {
    "disable_check": true,
    "tables_to_skip": null,
    "tables_to_scan": null,
    "table_threshold_overrides": null,
    "metric_type": "CompletenessConfig"
  }
]

다음 매개 변수는 freshnesscompleteness 평가에 사용할 수 있습니다.

필드 이름 설명 예시
tables_to_scan 지정된 테이블만 검색됩니다. ["table_to_scan", "another_table_to_scan"]
tables_to_skip 지정한 테이블은 검사 중에 건너뜁니다. ["table_to_skip"]
disable_check 스캔이 실행되지 않았습니다. freshness 스캔만 비활성화하거나 completeness 스캔만 비활성화하려는 경우 이 매개 변수를 사용합니다. true, false

다음 매개 변수는 freshness 평가에만 적용됩니다.

필드 이름 설명 예시
event_timestamp_col_names 스키마에 있을 수 있는 타임스탬프 열이 포함된 테이블 목록. 테이블에 이러한 열 중 하나가 있는 경우 이 열의 최대값을 초과하는 경우 테이블이 표시됩니다 Unhealthy . 이 매개 변수를 사용하면 평가 시간과 비용이 증가할 수 있습니다. ["timestamp", "date"]
table_threshold_overrides 테이블을 Unhealthy으로 표시하기 전에 마지막 테이블 업데이트 이후 최대 간격(초)을 지정하는 테이블 이름과 임계값으로 구성된 사전입니다. {"table_0": 86400}
table_latency_threshold_overrides 테이블을 표시하기 전에 테이블의 마지막 타임스탬프 이후 최대 간격을 지정하는 테이블 이름 및 대기 시간 임계값(초)으로 Unhealthy구성된 사전입니다. {"table_1": 3600}
static_table_threshold_override 테이블이 정적 테이블(즉, 더 이상 업데이트되지 않는 테이블)으로 간주되기 전의 시간(초)입니다. 2592000

completeness 평가에만 적용되는 매개 변수입니다.

필드 이름 설명 예시
table_threshold_overrides 테이블 이름 및 행 볼륨 임계값(정수로 지정됨)으로 구성된 사전입니다. 이전 24시간 동안 테이블에 추가된 행 수가 지정된 임계값보다 작으면 테이블이 표시됩니다 Unhealthy. {"table_0": 1000}