OUTLIER_IQR_COUNT
OUTLIER_IQR_COUNT (시스템 데이터 메트릭 함수)
OUTLIER_IQR_COUNT()는 열의 NULL이 아니고 NaN이 아닌 값 중 해당 열의 표준 Tukey 펜스(사분위 범위의 1.5배) 밖에 있는 값의 개수를 반환해요.
이 함수는 Enterprise Edition 기능이에요. 데이터 품질 모니터링(Data Quality Monitoring)에는 Enterprise Edition이 필요해요. 업그레이드에 대해 문의하려면 Snowflake 지원에 연락하세요.
이 문서는 함수를 직접 호출하는 문법을 제공해요. 함수를 테이블이나 뷰와 연결해 주기적으로 실행하는 방법은 DMF 연결(Associate a DMF)을 참고하세요.
본문
문법
SNOWFLAKE.CORE.OUTLIER_IQR_COUNT(<query>)
인자
query
단일 열을 프로젝션하는 SQL 쿼리를 지정해요.
허용 데이터 타입
*query*가 프로젝션하는 열은 다음 데이터 타입 중 하나여야 해요.
-
FLOAT
-
NUMBER
반환
이 함수는 NUMBER 데이터 타입의 스칼라 값을 반환해요.
사용 지침
-
시스템 DMF를 수동으로 호출할 때는 사용 중인 허용 데이터 타입을 지정할 필요가 없어요. 측정하려는 열에 대한 쿼리만 지정하면 돼요. Snowflake가 함수의 허용 데이터 타입을 열의 데이터 타입과 일치시켜요.
-
이 함수는 NULL이 아니고 NaN이 아닌 값들의 제1사분위수와 제3사분위수(Q1, Q3) 및 사분위 범위
IQR = Q3 - Q1을 계산한 다음,Q1 - 1.5 * IQR보다 작거나Q3 + 1.5 * IQR보다 큰 값을 세요. -
열에 NULL이 아니고 NaN이 아닌 값이 100개 미만이거나, 필요한 사분위수가 유한하지 않으면 함수는 0을 반환해요.
-
이 함수는 최대 약 100억 행의 테이블에 최적화돼 있어요. 이 범위를 넘으면 평가 지연 시간이 늘어나 DMF 스케줄링 창 안에 메트릭이 완료되지 않을 수 있어요.
-
이 함수의 평가는 열을 스캔하고 그 위에서 사분위수를 계산하므로, 소비되는(따라서 비용이 드는) 서버리스 컴퓨팅이 테이블 크기에 비례해요. DMF 평가 청구 방식에 대한 정보는 비용 고려사항(Cost considerations)을 참고하세요.
예제
금융 테이블에서 transaction_amount 열의 이상치 값 개수 측정:
SELECT SNOWFLAKE.CORE.OUTLIER_IQR_COUNT(
SELECT
transaction_amount
FROM finance.public.transactions
);
+----------------------------------------------------------------------------------------------+
| SNOWFLAKE.CORE.OUTLIER_IQR_COUNT(SELECT transaction_amount FROM finance.public.transactions) |
+----------------------------------------------------------------------------------------------+
| 340 |
+----------------------------------------------------------------------------------------------+