Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Data Health 검사 유형 참조

각 검사는 리소스의 특정 상태나 수치를 평가합니다. 아래의 예시 열 이름, 경로와 수치는 설명용이며 실제 데이터와 운영 기준으로 바꿉니다. 필수 여부는 설정 입력의 요건을 나타냅니다.

Severity에는 Moderate 또는 Critical을 지정하고, Escalate가 있는 상태 검사는 연속 실패 시 심각도를 높일 수 있습니다. Notes는 문맥을 남기는 메모이고 Issues는 실패 시 이슈를 만들지 정합니다. 각 검사에 표시한 필드만 해당 구성에 적용합니다. 구독 심각도는 검사 구독, 이슈와 알림은 알림 설정, 시간 검사의 평가 시점은 실행 스케줄에서 설명합니다.

지원 데이터 리소스

범주검사데이터 리소스
상태 검사Schedule status데이터셋
상태 검사Build status데이터셋, Iceberg 테이블, 가상 테이블
상태 검사Job status데이터셋, Iceberg 테이블, 가상 테이블
상태 검사Sync status데이터셋
시간 검사Build duration데이터셋
시간 검사Data freshness데이터셋
시간 검사Sync duration데이터셋
시간 검사Sync freshness데이터셋
시간 검사Time since last updated데이터셋, Iceberg 테이블, 가상 테이블
시간 검사Time since sync last updated데이터셋
크기와 개수 검사Dataset file count데이터셋
크기와 개수 검사Dataset partition데이터셋
크기와 개수 검사Row count데이터셋
크기와 개수 검사Transaction file count데이터셋
크기와 개수 검사Transaction file size데이터셋
내용 검사Allowed column values데이터셋
내용 검사Approximate unique percentage데이터셋
내용 검사Column regex데이터셋
내용 검사Approximate column relation데이터셋
내용 검사Date range데이터셋
내용 검사Null percentage데이터셋
내용 검사Numeric mean데이터셋
내용 검사Numeric median데이터셋
내용 검사Numeric range데이터셋
내용 검사Primary key데이터셋, Iceberg 테이블, 가상 테이블
스키마 검사Column데이터셋, Iceberg 테이블, 가상 테이블
스키마 검사Column count데이터셋
스키마 검사Schema데이터셋, Iceberg 테이블, 가상 테이블

상태 검사

Schedule status

스케줄의 가장 최근 빌드가 성공했는지 확인합니다. 함께 빌드하는 데이터셋 집합과 최종 출력까지의 여러 단계를 대표하는 검사입니다.

필드지정 여부의미와 조건설정 예시
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Escalate선택연속 실패 시 심각도를 높일지 지정합니다.Y, N
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Build status

해당 데이터셋을 최종 출력으로 만드는 가장 최근 전체 빌드의 성공 여부를 확인합니다. 큰 빌드의 중간 데이터셋에 같은 검사가 있더라도 그 중간 데이터셋의 Build status는 갱신하지 않습니다. 중간 실행의 결과는 Job status로 확인합니다.

필드지정 여부의미와 조건설정 예시
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Escalate선택연속 실패 시 심각도를 높일지 지정합니다.Y, N
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Job status

데이터셋을 만든 가장 최근 실행 작업의 성공 여부를 확인합니다. 최종 출력인지 중간 데이터셋인지와 무관하게 해당 작업이 실행될 때 평가합니다. 상위 실패로 대상 작업이 실행되지 않으면 이 검사도 평가되지 않을 수 있습니다.

필드지정 여부의미와 조건설정 예시
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Escalate선택연속 실패 시 심각도를 높일지 지정합니다.Y, N
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

스케줄 전체를 감시하려면 Schedule status를 권장합니다. 중간 데이터셋 자체의 갱신을 확인할 때에는 Job status, 최종 출력까지의 전체 빌드를 확인할 때에는 Build status를 사용합니다. 하나의 작업 결과가 전체 빌드 결과를 결정하는 단순한 경우에는 결과가 같지만, 중간 데이터셋이나 다중 출력, 상위 실패로 실행되지 않은 작업에서는 차이가 날 수 있습니다.

Sync status

데이터셋을 다른 데이터베이스로 보낸 가장 최근 동기화가 성공했는지 확인합니다. 여러 목적지가 있으면 감시할 sync를 구분합니다.

필드지정 여부의미와 조건설정 예시
Sync destination필수감시할 동기화 목적지를 선택합니다. 같은 데이터셋을 여러 곳에 동기화할 때 구분합니다.phonograph2-cache-worker, jdbc-worker
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Escalate선택연속 실패 시 심각도를 높일지 지정합니다.Y, N
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

시간 검사

Build duration

전체 빌드 완료 시간에 조건을 적용합니다. 최종 출력의 검사를 갱신하며 더 큰 빌드에 포함된 중간 데이터셋의 Build duration은 갱신하지 않습니다.

필드지정 여부의미와 조건설정 예시
Build duration선택빌드가 완료되기까지 걸린 전체 시간입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Median deviation선택최근 빌드 소요 시간의 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Data freshness

데이터셋의 최신 트랜잭션 시각과 지정 timestamp 열의 최댓값을 비교합니다. 열이 원천 시스템에서 행이 추가된 시각을 나타내면 내용의 최신성을 평가할 수 있습니다. 현재 시각에서 마지막 갱신까지의 경과 시간을 보는 TSLU와 다릅니다.

필드지정 여부의미와 조건설정 예시
Column name필수행의 원천 갱신 시각을 담은 열 이름입니다.LAST_UPDATED
Freshness range필수최신 데이터로 판단할 시각 차이의 범위입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Sync duration

동기화가 끝날 때까지 걸린 전체 시간을 검사합니다.

필드지정 여부의미와 조건설정 예시
Sync destination필수감시할 동기화 목적지를 선택합니다. 같은 데이터셋을 여러 곳에 동기화할 때 구분합니다.phonograph2-cache-worker, jdbc-worker
Sync duration선택동기화 완료까지 걸린 전체 시간입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Median deviation선택최근 동기화 소요 시간의 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Sync freshness

데이터셋의 마지막 동기화 시각과 지정 datetime 열의 최댓값을 비교합니다. 원천 행 추가 시각을 나타내는 열을 사용하는 것이 적합합니다.

필드지정 여부의미와 조건설정 예시
Column name필수행의 원천 갱신 시각을 담은 열 이름입니다.LAST_UPDATED
Freshness range필수최신 데이터로 판단할 시각 차이의 범위입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Time since last updated

데이터셋에 새 트랜잭션이 생긴 마지막 시점부터 경과한 시간을 검사합니다. 빈 트랜잭션을 제외할지와 자동 또는 사용자 지정 평가 스케줄을 설정합니다.

필드지정 여부의미와 조건설정 예시
Last updated선택데이터셋의 마지막 갱신 이후 경과 시간입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Median deviation선택최근 빌드의 갱신 시간 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Ignore empty transactions필수경과 시간과 중앙값 편차를 평가할 때 빈 트랜잭션을 제외할지 지정합니다. 파일이 없는 트랜잭션은 없었던 것처럼 무시합니다.Y, N
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Schedule필수자동 평가 또는 사용자 지정 스케줄로 실행할지 정합니다.Automatic, Custom Schedule
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Time since sync last updated

지정 목적지로 데이터셋을 마지막 동기화한 뒤 경과한 시간을 검사합니다.

필드지정 여부의미와 조건설정 예시
Last sync선택데이터셋을 목적지에 마지막으로 동기화한 뒤 경과 시간입니다. 일, 분 또는 시간 단위를 사용합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Median deviation선택최근 빌드의 갱신 시간 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

크기와 개수 검사

Dataset file count

데이터셋의 최신 view 전체에 포함된 파일 개수를 검사합니다. 트랜잭션 한 건의 파일 개수와 구분합니다.

필드지정 여부의미와 조건설정 예시
File count필수데이터셋의 가장 최근 view에 포함된 파일 수입니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Median deviation선택최근 빌드의 파일 수 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Dataset partition

파일 파티션 구성이 성능에 적합한지 고정 기준으로 판단합니다. 파일이 50개 미만이면 항상 통과하고 50개 이상이면 전체 파일 중 적어도 90%가 96MB를 초과해야 합니다. 임계값을 사용자가 조정하는 항목은 없습니다.

필드지정 여부의미와 조건설정 예시
Notes선택파일이 50개 미만이면 통과합니다. 50개 이상이면 적어도 90%의 파일이 96MB를 초과해야 통과합니다. 실패하면 파일 파티션 구성이 성능에 적합하지 않을 수 있습니다.조정 항목 없음
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Row count

데이터셋의 전체 행 수를 검사합니다. 마지막 성공 결과를 기준으로 비교하도록 설정한 경우에는 이전에 통과한 검사에서 기록한 행 수를 사용하며 실패한 검사 결과는 기준에 반영하지 않습니다.

필드지정 여부의미와 조건설정 예시
Row count필수데이터셋의 전체 행 수입니다.Between 500 and 1000, Greater than or equal to 100, Less than or equal to 1000, Equal to 10
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Median deviation선택최근 빌드 행 수의 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Transaction file count

한 트랜잭션에서 커밋한 파일의 개수를 검사하며 로그 파일은 제외합니다. 아래 File size 항목의 의미는 이 검사에서 파일 개수 조건이며 바이트 크기가 아닙니다.

필드지정 여부의미와 조건설정 예시
File size선택트랜잭션 하나에서 커밋한 파일의 개수입니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Median deviation선택최근 빌드의 파일 수 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Transaction file size

한 트랜잭션에서 커밋한 파일의 총크기를 검사하며 로그 파일은 제외합니다.

필드지정 여부의미와 조건설정 예시
File size선택트랜잭션 하나에서 커밋한 파일의 총크기입니다. 단위는 MB 또는 KB입니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Median deviation선택최근 빌드의 파일 크기 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

내용 검사

Allowed column values

열의 값이 지정한 허용값 목록에 들어가는지 확인합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.FIRST_NAME
Allowed values필수해당 열에서 허용할 값의 목록입니다.John, Jane
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Approximate unique percentage

열에서 고유한 값의 비율을 근사 계산합니다. 100% 유일성을 요구하는 기본 키 검증에는 적합하지 않으며 Primary key 검사를 사용해야 합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.FIRST_NAME
Unique percentage필수열에서 고유한 값의 비율을 백분율로 지정합니다.Between 10 and 20, Greater than or equal to 50, Less than or equal to 50, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Column regex

열의 값이 지정한 정규식과 일치하는지 확인합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.FIRST_NAME
Regex필수열의 값에 적용할 정규식입니다.^Pre, post$, .*any.*
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Approximate column relation

서로 다른 데이터셋의 두 열이 얼마나 비슷한지 백분율로 추정합니다. 정확한 비교가 필요하면 Data Expectations를 사용합니다.

필드지정 여부의미와 조건설정 예시
Other dataset필수비교할 다른 데이터셋입니다./Users/John Appleseed/Stock_Prices_Latest
Column 1 name필수검사를 설정한 데이터셋의 열 이름입니다.FIRST_NAME
Column 2 name필수비교 대상 데이터셋의 열 이름입니다.f_name
Percentage match필수두 열의 값이 일치해야 하는 비율입니다. 백분율로 지정합니다.값의 85%가 같음
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Date range

날짜 열의 값이 허용한 날짜 범위에 있는지 확인합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.LAST_UPDATED
Allowed date range필수해당 열에서 허용하는 날짜 범위입니다.2017-01-01 – 2018-01-01
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Null percentage

열에서 null인 값의 비율에 조건을 적용합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.CUSTOMER_ID
Null percentage선택열에서 null인 값의 비율입니다. 백분율로 지정합니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Median deviation선택최근 빌드의 null 비율 중앙값에서 얼마나 벗어났는지 근사 표준편차 단위로 비교합니다.1 Standard deviations, 10 Recent builds
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Numeric mean

숫자 열의 평균에 조건을 적용합니다. 고정 조건이나 마지막 검사 결과와의 비교를 구성할 수 있습니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 숫자 열 이름입니다.NUM_FAILURES
Mean선택열의 평균에 적용할 조건입니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Difference from last check선택현재 평균을 마지막 검사 때의 평균과 비교하며 선택적으로 상수를 더하거나 뺍니다.마지막 검사값 + 5보다 큼
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Numeric median

숫자 열의 중앙값에 조건을 적용합니다. 고정 조건이나 마지막 검사 결과와의 비교를 구성할 수 있습니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 숫자 열 이름입니다.NUM_FAILURES
Median선택열의 중앙값에 적용할 조건입니다.Between 1 and 2, Greater than or equal to 1, Less than or equal to 1, Equal to 1
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Difference from last check선택현재 중앙값을 마지막 검사 때의 중앙값과 비교하며 선택적으로 상수를 더하거나 뺍니다.마지막 검사값 + 5보다 큼
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Numeric range

숫자 열의 값이 지정한 범위에 들어가는지 확인합니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 숫자 열 이름입니다.NUM_FAILURES
Allowed range필수열에서 허용하는 값의 범위입니다.3-5
Severity필수검사 실패의 심각도입니다.Moderate, Critical
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Primary key

지정한 열의 값이 100% 유일하고 null이 없는지 검사합니다. 근사 고유 비율 검사와 목적 및 보장 범위가 다릅니다.

필드지정 여부의미와 조건설정 예시
Column name필수검사할 열 이름입니다.PART_ID
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

스키마 검사

Column

열이 존재하는지와 그 자료형을 검사합니다.

필드지정 여부의미와 조건설정 예시
Column name필수확인할 열 이름입니다.PART_ID
Is Present필수열의 존재 여부를 확인합니다.Y
Type필수확인할 열의 자료형입니다.Integer
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Column count

데이터셋 전체 열 수를 검사합니다.

필드지정 여부의미와 조건설정 예시
Column count필수데이터셋 전체 열 수입니다.50
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N

Schema

열과 자료형의 기준을 정하고 선택한 비교 정책에 맞는지 검사합니다. 열의 순서, 추가와 누락의 허용 범위를 구분합니다.

필드지정 여부의미와 조건설정 예시
Columns필수기준 열과 자료형을 지정합니다. 전체 자료형 일치 또는 열 존재 여부만 비교하는 구성을 선택할 수 있습니다.자료형 예시: String
Comparison type필수스키마 비교 정책을 선택합니다.자유 문구
Notes선택검사에 필요한 문맥을 메모로 남깁니다.자유 문구
Issues선택검사가 실패하면 이슈를 자동 생성할지 지정합니다.Y, N
Comparison type비교 범위
EXACT_MATCH_ORDERED_COLUMNS열 순서, 이름, 자료형과 열 개수를 비교합니다.
EXACT_MATCH_UNORDERED_COLUMNS열 이름, 자료형과 개수를 비교하며 순서는 무시합니다.
COLUMN_ADDITIONS_ALLOWED기준 열 이름과 자료형을 비교합니다. 추가 열은 허용하지만 기준 열의 누락은 허용하지 않습니다.
COLUMN_ADDITIONS_ALLOWED_STRICT열 추가를 허용하면서 새 열을 검사 기준에도 추가합니다. 한 번 추가한 열은 이후 누락되면 안 됩니다.

근사 표준편차

Median deviation에서 사용하는 값은 일반적인 표준편차를 그대로 계산한 값이 아닙니다. 빌드 수치에 이상치가 생기기 쉬우므로 중앙값 절대편차(MAD)를 사용합니다.

값이 x_1, ..., x_n이고 그 중앙값이 X일 때 다음과 같이 계산합니다.

MAD = median(|x_i - X|)
근사 표준편차 σ = MAD × 1.4826

최근 기록 개수와 이 근사 표준편차의 몇 배까지 허용할지를 정하여 과거 중앙값에서 벗어난 정도를 평가합니다. 예시의 10 Recent builds와 1 Standard deviations는 구성값 예시이며 고정된 기본값을 뜻하지 않습니다.