시스템 데이터 메트릭 함수
시스템 데이터 메트릭 함수
이 주제는 Snowflake가 모든 계정에 제공하는 시스템 데이터 메트릭 함수(DMF, Data Metric Function)에 대한 레퍼런스예요. DMF는 데이터 품질 체크의 구성 요소(building block)예요.
본문
시스템 DMF에 대해
Snowflake는 공유된 SNOWFLAKE 데이터베이스의 CORE 스키마에 시스템 DMF를 제공해요. 시스템 DMF는 Snowflake가 관리하므로 어떤 시스템 DMF의 이름이나 기능도 변경할 수 없어요.
각 시스템 DMF는 서로 다른 데이터 품질 속성을 측정하게 해 줘요. 테이블이나 뷰에 시스템 DMF를 여러 개 지정하면 거버넌스·규정 준수 요구를 충족하기 위한 더 포괄적인 데이터 품질 측정이 가능해져요.
시스템 DMF 목록
현재 Snowflake는 공통 지표를 직접 정의하지 않고도 측정할 수 있도록 다음 시스템 DMF를 지원해요.
정확도(Accuracy)
| 시스템 DMF | 설명 |
|---|---|
BLANK_COUNT |
컬럼에 공백(blank) 값이 몇 개인지 확인해요. |
BLANK_PERCENT |
컬럼 값 중 공백이 차지하는 비율을 확인해요. |
CASE_FORMAT_VIOLATION_COUNT |
문자열 컬럼의 비-NULL 값 중 대소문자가 일관되지 않은 값(전부 대문자·소문자·타이틀 케이스가 아닌 값)이 몇 개인지 확인해요. |
CASE_FORMAT_VIOLATION_PERCENT |
문자열 컬럼의 비-NULL 값 중 대소문자가 일관되지 않은 비율을 확인해요. |
FUTURE_TIMESTAMP_COUNT |
날짜/타임스탬프 컬럼 값 중 예정된 평가 시각보다 미래인 값이 몇 개인지 확인해요. |
FUTURE_TIMESTAMP_PERCENT |
날짜/타임스탬프 컬럼 값 중 예정된 평가 시각보다 미래인 비율을 확인해요. |
INVALID_JSON_COUNT |
문자열 컬럼의 비-NULL 값 중 유효한 JSON이 아닌 값이 몇 개인지 확인해요. |
INVALID_JSON_PERCENT |
문자열 컬럼의 비-NULL 값 중 유효한 JSON이 아닌 비율을 확인해요. |
INVALID_NUMERIC_TYPE_CAST_COUNT |
문자열 컬럼의 비-NULL 값 중 숫자로 파싱할 수 없는 값이 몇 개인지 확인해요. |
INVALID_NUMERIC_TYPE_CAST_PERCENT |
문자열 컬럼의 비-NULL 값 중 숫자로 파싱할 수 없는 비율을 확인해요. |
NEGATIVE_COUNT |
숫자 컬럼 값 중 음수인 값이 몇 개인지 확인해요. |
NEGATIVE_PERCENT |
숫자 컬럼 값 중 음수인 비율을 확인해요. |
NULL_COUNT |
컬럼에 NULL 값이 몇 개인지 확인해요. |
NULL_PERCENT |
컬럼 값 중 NULL인 비율을 확인해요. |
SPECIAL_CHARACTER_COUNT |
문자열 컬럼의 비-NULL 값 중 영숫자 범위 밖의 문자를 포함한 값이 몇 개인지 확인해요. |
SPECIAL_CHARACTER_PERCENT |
문자열 컬럼의 비-NULL 값 중 영숫자 범위 밖의 문자를 포함한 비율을 확인해요. |
UNTRIMMED_STRING_COUNT |
문자열 컬럼의 비-NULL 값 중 앞뒤에 공백이 있는 값이 몇 개인지 확인해요. |
UNTRIMMED_STRING_PERCENT |
문자열 컬럼의 비-NULL 값 중 앞뒤에 공백이 있는 비율을 확인해요. |
ZERO_COUNT |
숫자 컬럼 값 중 0인 값이 몇 개인지 확인해요. |
ZERO_PERCENT |
숫자 컬럼 값 중 0인 비율을 확인해요. |
신선도(Freshness)
| 시스템 DMF | 설명 |
|---|---|
FRESHNESS |
타임스탬프 컬럼이나 가장 최근 DML 연산을 기준으로 테이블 데이터의 신선도를 확인해요. |
DATA_METRIC_SCHEDULE_TIME |
커스텀 신선도 지표를 정의해요. |
스키마(Schema)
| 시스템 DMF | 설명 |
|---|---|
SCHEMA_CHANGE_COUNT |
연속된 평가 사이에 감지된 스키마 변경(컬럼 추가·삭제·이름 변경·타입 변경) 횟수를 세요. |
통계(Statistics)
| 시스템 DMF | 설명 |
|---|---|
APPROX_QUANTILE_25 |
숫자 컬럼의 대략적인 25번째 백분위 값을 확인해요. |
APPROX_QUANTILE_50 |
숫자 컬럼의 대략적인 50번째 백분위(중앙값) 값을 확인해요. |
APPROX_QUANTILE_99 |
숫자 컬럼의 대략적인 99번째 백분위 값을 확인해요. |
AVG |
컬럼의 평균값을 확인해요. |
EXTREME_OUTLIER_COUNT |
숫자 컬럼 값 중 그 컬럼의 극단 비대칭 Tukey 울타리(fence) 밖에 있는 값이 몇 개인지 확인해요. |
EXTREME_OUTLIER_IQR_COUNT |
숫자 컬럼 값 중 극단 Tukey 울타리(사분위 범위의 3배) 밖에 있는 값이 몇 개인지 확인해요. |
EXTREME_OUTLIER_IQR_PERCENT |
숫자 컬럼 값 중 극단 Tukey 울타리(사분위 범위의 3배) 밖에 있는 비율을 확인해요. |
EXTREME_OUTLIER_PERCENT |
숫자 컬럼 값 중 극단 비대칭 Tukey 울타리 밖에 있는 비율을 확인해요. |
EXTREME_OUTLIER_ZSCORE_COUNT |
숫자 컬럼 값 중 Z-score가 4.5보다 큰 값이 몇 개인지 확인해요. |
EXTREME_OUTLIER_ZSCORE_PERCENT |
숫자 컬럼 값 중 Z-score가 4.5보다 큰 비율을 확인해요. |
MAX |
컬럼의 최댓값을 확인해요. |
MEDIAN |
숫자 컬럼의 정확한 중앙값을 확인해요. |
MIN |
컬럼의 최솟값을 확인해요. |
OUTLIER_COUNT |
숫자 컬럼 값 중 비대칭 Tukey 울타리 밖에 있는 값이 몇 개인지 확인해요. |
OUTLIER_IQR_COUNT |
숫자 컬럼 값 중 표준 Tukey 울타리(사분위 범위의 1.5배) 밖에 있는 값이 몇 개인지 확인해요. |
OUTLIER_IQR_PERCENT |
숫자 컬럼 값 중 표준 Tukey 울타리(사분위 범위의 1.5배) 밖에 있는 비율을 확인해요. |
OUTLIER_PERCENT |
숫자 컬럼 값 중 비대칭 Tukey 울타리 밖에 있는 비율을 확인해요. |
OUTLIER_ZSCORE_COUNT |
숫자 컬럼 값 중 Z-score가 3보다 큰 값이 몇 개인지 확인해요. |
OUTLIER_ZSCORE_PERCENT |
숫자 컬럼 값 중 Z-score가 3보다 큰 비율을 확인해요. |
STDDEV |
컬럼의 표준 편차 값을 확인해요. |
STRING_LENGTH_AVG |
문자열 컬럼의 비-NULL 값 평균 문자열 길이를 확인해요. |
STRING_LENGTH_MAX |
문자열 컬럼의 비-NULL 값 최대 문자열 길이를 확인해요. |
STRING_LENGTH_MIN |
문자열 컬럼의 비-NULL 값 최소 문자열 길이를 확인해요. |
VARIANCE |
숫자 컬럼의 분산 값을 확인해요. |
유일성(Uniqueness)
| 시스템 DMF | 설명 |
|---|---|
ACCEPTED_VALUES |
컬럼 값이 불리언 표현식과 일치하는지 확인해요. |
DUPLICATE_COUNT |
NULL 값을 포함해 컬럼의 중복 값 개수를 확인해요. |
UNIQUE_COUNT |
컬럼의 고유하고 NULL이 아닌 값의 개수를 확인해요. |
용량(Volume)
| 시스템 DMF | 설명 |
|---|---|
ROW_COUNT |
테이블이나 뷰에 레코드가 몇 개인지 확인해요. |
참고: 데이터 품질 모니터링은 Enterprise Edition 기능이에요. 업그레이드를 문의하려면 Snowflake 지원에 연락해 주세요.