데이터 품질 및 데이터 메트릭 함수 소개

데이터 품질은 데이터 메트릭 함수(DMFs)를 사용하며, 여기에는 Snowflake 제공 시스템 DMFs 와 사용자 정의 DMFs 가 포함되어 데이터의 상태와 무결성을 모니터링합니다. DMFs를 사용하여 최신성 및 중복, NULLs, 행 및 고유 값을 측정하는 개수 등의 주요 메트릭을 측정할 수 있습니다

데이터 품질 및 DMFs 정보

데이터 품질은 데이터 기반 의사결정을 내리기 위해 데이터의 상태 저장 및 무결성을 파악하는 데 중점을 두며, 여기에는 데이터의 최신성, 열의 null 값 또는 빈 필드와 비교한 실제 데이터 값에 대한 정확성 등이 포함됩니다. DMFs를 사용하여 데이터 품질을 측정할 수 있습니다. Snowflake는 SNOWFLAKE.CORE 스키마에 내장된 시스템 DMFs를 제공하여 공통 메트릭을 정의할 필요 없이 측정할 수 있습니다. 또한 사용자 지정 DMFs를 정의하여 데이터 품질 측정을 보다 정밀하게 미세 조정할 수 있으며, 이러한 DMFs는 사용자가 선택한 데이터베이스와 스키마에 저장됩니다.

시스템 DMFs, 사용자 지정 DMFs 또는 둘 다를 사용하든, 테이블 또는 뷰에 DMF를 할당하면 Snowflake는 데이터 메트릭 함수에 대한 전용 이벤트 테이블 에 DMF 예약 결과를 기록합니다. DMF가 호출되는 빈도에 대한 빈도를 지정할 수 있습니다. 예를 들어, 특정 테이블의 DMFs를 매일 3회 실행하도록 예약할 수 있습니다. 회사의 내부 데이터 품질 요구 사항에 따라 필요에 따라 빈도를 수정할 수 있습니다. 테이블에 설정된 모든 DMFs는 동일한 일정을 따릅니다.

DMFs를 실행하도록 예약한 후에는 데이터 품질에 변경 사항이 발생할 때 이를 알려주는 경고를 구성할 수 있습니다. DMF와 경고 기능을 결합하면 측정 중인 테이블에서 데이터 품질에 대한 일관적인 임계값 알림을 받을 수 있습니다. 이러한 인사이트는 다음을 활성화하여 데이터 거버넌스 태세를 강화합니다.

  • 데이터 관리자는 특정 메트릭을 기준으로 데이터의 현재 상태를 파악할 수 있습니다.

  • 데이터 엔지니어는 중요한 테이블과 뷰에 대해 작업을 즉시 수행합니다.

  • 플랫폼 관리자는 데이터 품질 모니터링이 비용, 일관성, 성능을 고려하여 수행되도록 보장해야 합니다.

데이터 정의, 측정, 모니터링을 위한 데이터 품질 워크플로는 추가 워크로드에 적용될 수 있습니다.

품질 검사 정의

DMF는 값(예: 열의 NULL 값 개수)을 반환합니다. 그러나 DMF에서 반환할 것으로 예상되는 값을 정의하지는 않습니다.

DMF 값이 데이터 품질 검사를 통과하는지에 대한 기준을 정의하려는 경우 DMF와 테이블 간의 연결에 대한 *기대치*를 만들면 됩니다. DMF가 값을 반환하는 경우, 해당 값을 기대치와 비교하여 데이터가 품질 검사를 통과했는지 여부를 판단합니다.

자세한 내용은 기대치를 사용하여 데이터 품질 검사 구현하기 섹션을 참조하십시오.

지원되는 테이블 종류

다음 종류의 테이블 오브젝트에 DMF를 설정할 수 있습니다.

  • 동적 테이블

  • 이벤트 테이블

  • 외부 테이블

  • Apache Iceberg™ 테이블

  • 구체화된 뷰

  • 임시 및 일시적 테이블을 포함한 테이블(CREATE TABLE)

하이브리드 테이블이나 스트림 오브젝트에는 DMF를 설정할 수 없습니다.

청구 및 가격

Snowflake는 이 기능을 지원하기 위해 가상 웨어하우스 오브젝트를 생성하고 관리합니다. 이 기능은 일반적인 SQL 쿼리 워크플로 외에 추가적인 가상 웨어하우스 리소스를 프로비저닝하거나 사용할 필요 없이 사용할 수 있습니다.

DMF를 호출하면 서버리스 컴퓨팅 리소스가 사용되며, 이는 Snowflake 서비스 사용 테이블 에 자세히 설명되어 있습니다. 이 테이블에는 클라우드 리전Snowflake Edition 별 크레딧 가격이 나열되어 있습니다.

사용한 크레딧은 월별 청구서의 “Data Quality Monitoring” 카테고리에 목록으로 표시됩니다. 이러한 크레딧에는 사용자가 사용하는 모든 시스템 또는 사용자 정의 데이터 품질 측정 항목에서 소비하는 컴퓨팅 비용이 포함됩니다. DMF 생성에 대한 요금은 청구되지 않습니다.

  • 오브젝트에 대해 예약된 DMF가 계산된 경우에만 과금이 발생합니다. SELECT 문으로 DMF를 호출하는 등 예정에 없던 데이터 메트릭 함수 사용량에 대해서는 요금이 청구되지 않습니다.

  • 로깅 인프라는 이벤트 테이블의 메트릭 출력을 통합합니다. 로깅 서비스로 인해 발생한 소비량은 월별 청구서에 “로깅”으로 표시됩니다.

자세한 내용은 서버리스 크레딧 사용 섹션을 참조하십시오.

DATA_QUALITY_MONITORING_USAGE_HISTORY 에 쿼리하여 계정에서 DMFs 사용과 관련된 크레딧 소비를 추적할 수 있습니다.

이점

DMFs를 사용하면 데이터 품질에 대한 노력이 향상되고 다음과 같은 이점이 있습니다.

규정 준수 지원:

데이터의 상태를 파악하면 규정 준수 및 규제 표준을 어떻게 준수하는지 입증하기가 더 쉬워집니다. 이를 통해 위험이 감소하고 데이터 거버넌스 태세가 강화됩니다.

서비스 수준 계약(SLAs) 충족:

최신성과 같은 정확한 데이터 메트릭은 데이터 공급자, 데이터 컨슈머, 고객 간의 SLAs를 충족하는 데 도움이 됩니다.

신뢰성:

DMFs는 데이터 검증을 제공하여 신뢰할 수 있는 데이터 기반 의사결정을 지원합니다.

일관성:

시스템 DMFs를 사용하고 적절한 사용자 지정 DMFs를 반복적으로 사용하면 시간이 지나도 일관된 데이터 품질 평가가 이루어집니다. 이를 통해 데이터의 신뢰성이 향상됩니다.

특정 사용 사례에 적합하도록 최적화:

사용자 지정 DMFs를 사용하면 데이터 엔지니어가 데이터를 측정할 수 있는 정확한 메트릭을 설계할 수 있어 데이터의 대상 애플리케이션에 대한 보다 정확한 최적화가 가능합니다.

자동 측정:

테이블 또는 뷰에 DMF를 할당하고 DMF를 실행할 일정을 지정하면 DMF 호출이 자동으로 이루어집니다. 데이터 품질을 적극적으로 측정하는 데 추가 작업이 필요하지 않습니다. 자세한 내용은 DMF 실행 예약하기데이터 메트릭 함수의 결과 보기 섹션을 참조하십시오.

성능 관리:

Snowflake는 DMFs의 사용 방식을 평가하고 최적의 쿼리 성능을 제공하기 위해 쿼리 평가를 최적화합니다.

고려 사항

  • 복제 및 DMFs에 대한 자세한 내용은 데이터 메트릭 함수(DMFs) 복제 섹션을 참조하십시오.

  • 테이블에 DMF를 설정하려면 테이블 소유자 역할에 전역(계정 수준) EXECUTE DATA METRIC FUNCTION 권한이 부여되어야 합니다. 따라서 테이블 소유자 역할은 CREATE ROLE 명령으로 생성한 사용자 정의 사용자 지정 역할이거나 SYSADMIN 역할과 같은 시스템 역할이어야 합니다.

    데이터베이스 역할은 해당 역할이 있는 데이터베이스에 한해 적용되므로 데이터베이스 역할에 전역 권한을 부여할 수 없습니다. 데이터베이스 역할이 소유한 테이블이 있고 해당 테이블에 DMF를 설정하려는 경우 테이블의 OWNERSHIP 권한을 사용자 지정 역할 또는 시스템 역할로 이전해야 합니다. 자세한 내용은 GRANT OWNERSHIP 섹션을 참조하십시오.

제한 사항

DMFs를 사용할 때는 다음 제한 사항에 유의하십시오.

  • 오브젝트에 DMFs 설정하기:

    계정당 오브젝트에 대해 총 10,000개까지만 DMFs를 연결할 수 있습니다. 테이블 또는 뷰에서 DMF를 설정하는 각 인스턴스는 1개의 연결로 계산됩니다.

  • 데이터 공유:

    공유 테이블 또는 뷰를 공유하거나 공유 테이블 또는 뷰에 DMF를 설정할 수 있는 권한을 DMF에 부여할 수 없습니다.

  • 오브젝트 태그에 DMF를 설정하는 기능은 지원되지 않습니다.

  • 독자 계정 의 오브젝트에는 DMF를 설정할 수 없습니다.

  • 평가판 계정에서는 이 기능을 지원하지 않습니다.