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는 구성값 예시이며 고정된 기본값을 뜻하지 않습니다.