Microsoft Purview에서 Snowflake에 연결 및 관리

이 문서에서는 Snowflake를 등록하는 방법과 Microsoft Purview에서 Snowflake를 인증하고 상호 작용하는 방법을 간략하게 설명합니다. Microsoft Purview에 대한 자세한 내용은 소개 문서를 참조하세요.

지원되는 기능

메타데이터 추출 전체 검사 증분 검사 범위가 지정된 검사 분류 레이블 지정 액세스 정책 계보 데이터 공유 라이브 보기
아니요 아니요 아니요 아니요 아니요

Snowflake 원본을 검사할 때 Microsoft Purview는 다음을 지원합니다.

  • 다음을 포함한 기술 메타데이터 추출:

    • 서버
    • 데이터베이스
    • 스키마
    • 열, 외장 키 및 고유 제약 조건을 포함한 테이블
    • 열을 포함한 뷰
    • 매개 변수 데이터 세트 및 결과 집합을 포함한 저장 프로시저
    • 매개 변수 데이터 세트를 포함한 함수
    • 파이프
    • 단계
    • 열을 포함한 스트림
    • 작업
    • 시퀀스
  • 테이블, 뷰, 스트림 및 저장 프로시저 간의 자산 관계에 대한 정적 계보 가져오기

저장 프로시저의 경우 검사 설정에서 추출할 세부 정보 수준을 선택할 수 있습니다. 저장 프로시저 계보는 SNOWflake Scripting(SQL) 및 JavaScript 언어에 대해 지원되며 프로시저 정의에 따라 생성됩니다.

검사를 설정할 때 지정된 이름 또는 이름 패턴에 따라 하나 이상의 Snowflake 데이터베이스를 검색하거나 지정된 이름 또는 이름 패턴과 일치하는 스키마 하위 집합으로 검사를 추가로 scope 수 있습니다.

알려진 제한

  • 개체가 데이터 원본에서 삭제되면 현재 후속 검사에서 Microsoft Purview에서 해당 자산을 자동으로 제거하지 않습니다.
  • 저장 프로시저 계보는 다음 패턴에 대해 지원되지 않습니다.
    • Java, Python 및 Scala 언어로 정의된 저장 프로시저입니다.
    • 정적 SQL 쿼리와 함께 SQL EXECUTE IMMEDIATE 를 변수로 사용하는 저장 프로시저입니다.

필수 구성 요소

참고

데이터 저장소에 공개적으로 액세스할 수 없는 경우 (데이터 저장소가 온-프레미스 네트워크, 프라이빗 네트워크 또는 특정 IP 등의 액세스를 제한하는 경우) 자체 호스팅 통합 런타임을 구성하여 연결해야 합니다.

검사에 필요한 권한

Microsoft Purview는 Snowflake 검사를 위한 기본 인증(사용자 이름 및 암호)을 지원합니다. 지정된 사용자의 기본 역할은 검사를 수행하는 데 사용됩니다. Snowflake 사용자는 검색할 웨어하우스 및 데이터베이스에 대한 사용 권한이 있어야 하며 고급 메타데이터에 액세스하려면 시스템 테이블에 대한 읽기 액세스 권한이 있어야 합니다.

다음은 Microsoft Purview 검사를 위한 사용자를 만들고 사용 권한을 설정하는 샘플 연습입니다. 기존 사용자를 사용하도록 선택하는 경우 웨어하우스 및 데이터베이스 개체에 대한 적절한 권한이 있는지 확인합니다.

  1. 역할을 설정합니다 purview_reader . 이 작업을 수행하려면 ACCOUNTADMIN 권한이 필요합니다.

    USE ROLE ACCOUNTADMIN;
    
    --create role to allow read only access - this will later be assigned to the Microsoft Purview user
    CREATE OR REPLACE ROLE purview_reader;
    
    --make sysadmin the parent role
    GRANT ROLE purview_reader TO ROLE sysadmin;
    
  2. Microsoft Purview에서 권한을 사용하고 부여할 웨어하우스를 만듭니다.

    --create warehouse - account admin required
    CREATE OR REPLACE WAREHOUSE purview_wh WITH 
        WAREHOUSE_SIZE = 'XSMALL' 
        WAREHOUSE_TYPE = 'STANDARD' 
        AUTO_SUSPEND = 300 
        AUTO_RESUME = TRUE 
        MIN_CLUSTER_COUNT = 1 
        MAX_CLUSTER_COUNT = 2 
        SCALING_POLICY = 'STANDARD';
    
    --grant rights to the warehouse
    GRANT USAGE ON WAREHOUSE purview_wh TO ROLE purview_reader;
    
  3. Microsoft Purview 검사를 위한 사용자를 purview 만듭니다.

    CREATE OR REPLACE USER purview 
        PASSWORD = '<password>'; 
    
    --note the default role will be used during scan
    ALTER USER purview SET DEFAULT_ROLE = purview_reader;
    
    --add user to purview_reader role
    GRANT ROLE purview_reader TO USER purview;
    
  4. 데이터베이스 개체에 대한 읽기 권한자 권한을 부여합니다.

    GRANT USAGE ON DATABASE <your_database_name> TO purview_reader;
    
    --grant reader access to all the database structures that purview can currently scan
    GRANT USAGE ON ALL SCHEMAS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON ALL FUNCTIONS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON ALL PROCEDURES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON ALL TABLES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON ALL VIEWS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE, READ on ALL STAGES IN DATABASE <your_database_name> TO role purview_reader;
    
    --grant reader access to any future objects that could be created
    GRANT USAGE ON FUTURE SCHEMAS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON FUTURE FUNCTIONS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE ON FUTURE PROCEDURES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON FUTURE TABLES IN DATABASE <your_database_name> TO role purview_reader;
    GRANT SELECT ON FUTURE VIEWS IN DATABASE <your_database_name> TO role purview_reader;
    GRANT USAGE, READ ON FUTURE STAGES IN DATABASE <your_database_name> TO role purview_reader;
    

등록

이 섹션에서는 Microsoft Purview 거버넌스 포털을 사용하여 Microsoft Purview에서 Snowflake를 등록하는 방법을 설명합니다.

등록 단계

데이터 카탈로그에 새 Snowflake 원본을 등록하려면 다음 단계를 수행합니다.

  1. Microsoft Purview 거버넌스 포털에서 Microsoft Purview 계정으로 이동합니다.
  2. 왼쪽 탐색 영역에서 데이터 맵 을 선택합니다.
  3. 등록 선택
  4. 원본 등록에서 Snowflake를 선택합니다. 계속을 선택합니다.

원본 등록(Snowflake) 화면에서 다음 단계를 수행합니다.

  1. 데이터 원본이 카탈로그 내에 나열될 이름을 입력합니다.

  2. Snowflake 계정에 연결하는 데 사용되는 서버 URL을 형식으로 <account_identifier>.snowflakecomputing.com입력합니다(예: orgname-accountname.snowflakecomputing.com). Snowflake 계정 식별자에 대해 자세히 알아봅니다.

  3. 컬렉션을 선택하거나 새 컬렉션을 만듭니다(선택 사항).

  4. 완료하여 데이터 원본을 등록합니다.

    원본 등록 옵션

검사

아래 단계에 따라 Snowflake를 검사하여 자산을 자동으로 식별합니다. 일반적인 검사에 대한 자세한 내용은 검사 및 수집 소개를 참조하세요.

검사에 대한 인증

Snowflake 원본에 대해 지원되는 인증 유형은 기본 인증입니다.

검사 만들기 및 실행

새 검사를 만들고 실행하려면 다음 단계를 수행합니다.

  1. 서버에 공개적으로 액세스할 수 있는 경우 2단계로 건너뜁니다. 그렇지 않으면 자체 호스팅 통합 런타임이 구성되어 있는지 확인해야 합니다.

    1. Microsoft Purview 거버넌스 포털에서 관리 센터에 도착하여 통합 런타임을 선택합니다.
    2. 자체 호스팅 통합 런타임을 사용할 수 있는지 확인합니다. 설정되지 않은 경우 여기에 언급된 단계를 사용하여 자체 호스팅 통합 런타임을 설정합니다.
  2. Microsoft Purview 거버넌스 포털에서 원본으로 이동합니다.

  3. 등록된 Snowflake 소스를 선택합니다.

  4. + 새 검사를 선택합니다.

  5. 아래 세부 정보를 제공합니다.

    1. 이름: 검사의 이름

    2. 통합 런타임을 통해 연결: 서버에 공개적으로 액세스할 수 있는 경우 Azure 자동 해결 통합 런타임을 선택하거나 공개적으로 사용할 수 없는 경우 구성된 자체 호스팅 통합 런타임을 선택합니다.

    3. 자격 증명: 자격 증명을 선택하여 데이터 원본에 연결합니다. 다음을 수행해야 합니다.

      • 자격 증명을 만드는 동안 기본 인증 을 선택합니다.
      • 사용자 이름 입력 필드에서 Snowflake에 연결하는 데 사용되는 사용자 이름을 제공합니다.
      • Snowflake에 연결하는 데 사용되는 사용자 암호를 비밀 키에 저장합니다.
    4. 웨어하우스: 대문자에서 검사를 강화하는 데 사용되는 instance 웨어하우스의 이름을 지정합니다. 자격 증명에 지정된 사용자에게 할당된 기본 역할에는 이 웨어하우스에 대한 USAGE 권한이 있어야 합니다.

    5. 데이터베이스: 대문자로 가져올 데이터베이스 instance 이름을 하나 이상 지정합니다. 목록의 이름을 세미콜론(;))으로 구분합니다. 예를 들면 db1;db2와 같습니다. 자격 증명에 지정된 사용자에게 할당된 기본 역할은 데이터베이스 개체에 대한 적절한 권한이 있어야 합니다.

      SQL LIKE 식 구문을 사용하는 허용 가능한 데이터베이스 이름 패턴에는 %를 사용하는 것이 포함됩니다. 예: : A%;%B;%C%;D

      • A 또는 로 시작
      • B 또는 로 종료
      • C 또는 포함
      • 같음 D
    6. 스키마: 세미콜론으로 구분된 목록으로 표현되는 가져올 스키마의 하위 집합을 나열합니다. 예를 들면 schema1;schema2와 같습니다. 해당 목록이 비어 있으면 모든 사용자 스키마를 가져옵니다. 모든 시스템 스키마 및 개체는 기본적으로 무시됩니다.

      SQL LIKE 식 구문을 사용하는 허용 가능한 스키마 이름 패턴에는 %를 사용하는 것이 포함됩니다. 예: : A%;%B;%C%;D

      • A 또는 로 시작
      • B 또는 로 종료
      • C 또는 포함
      • 같음 D

      NOT 및 특수 문자의 사용은 허용되지 않습니다.

    7. 저장 프로시저 세부 정보: 저장 프로시저에서 가져온 세부 정보 수를 제어합니다.

      • 서명(기본값): 저장 프로시저의 이름 및 매개 변수입니다.
      • 코드, 서명: 저장 프로시저의 이름, 매개 변수 및 코드입니다.
      • 계보, 코드, 서명: 저장 프로시저의 이름, 매개 변수 및 코드 및 코드에서 파생된 데이터 계보입니다.
      • 없음: 저장 프로시저 세부 정보는 포함되지 않습니다.

      참고

      검사에 자체 호스팅 Integration Runtime 사용하는 경우 버전 5.30.8541.1부터 기본 서명 이외의 사용자 지정된 설정이 지원됩니다. 이전 버전은 항상 저장 프로시저의 이름과 매개 변수를 추출합니다.

    8. 사용 가능한 최대 메모리 (자체 호스팅 통합 런타임 사용 시 적용): 검사 프로세스에서 사용할 고객의 VM에서 사용할 수 있는 최대 메모리(GB)입니다. 스캔할 Snowflake 원본의 크기에 따라 달라집니다.

      참고

      일반적으로 1000개 테이블마다 1GB 메모리를 제공하세요.

      Snowflake 스캔

  6. 연결 테스트를 선택하여 설정의 유효성을 검사합니다(Azure Integration Runtime 사용할 때 사용 가능).

  7. 계속을 선택합니다.

  8. 분류에 대한 검사 규칙 집합 을 선택합니다. 시스템 기본값, 기존 사용자 지정 규칙 집합 중에서 선택하거나 인라인 으로 새 규칙 집합을 만들 수 있습니다. 자세한 내용은 분류 문서를 참조하세요.

    참고

    자체 호스팅 런타임을 사용하는 경우 Snowflake 분류를 사용하려면 버전 5.26.404.1 이상으로 업그레이드해야 합니다. 최신 버전의 Microsoft Integration 런타임은 여기에서 찾을 수 있습니다.

  9. 검사 트리거를 선택합니다. 일정을 설정하거나 검사를 한 번 실행할 수 있습니다.

  10. 검사를 검토하고 저장 및 실행을 선택합니다.

검사 및 검사 실행 보기

기존 검사를 보려면 다음을 수행합니다.

  1. Microsoft Purview 거버넌스 포털로 이동합니다. 왼쪽 창에서 데이터 맵을 선택합니다.
  2. 데이터 원본을 선택합니다. 최근 검사에서 해당 데이터 원본에 대한 기존 검사 목록을 보거나 검사 탭에서 모든 검사를 볼 수 있습니다.
  3. 보려는 결과가 있는 검사를 선택합니다. 창에는 이전의 모든 검사 실행과 각 검사 실행에 대한 상태 및 메트릭이 표시됩니다.
  4. 실행 ID를 선택하여 검사 실행 세부 정보를 검사.

검사 관리

검사를 편집, 취소 또는 삭제하려면 다음을 수행합니다.

  1. Microsoft Purview 거버넌스 포털로 이동합니다. 왼쪽 창에서 데이터 맵을 선택합니다.

  2. 데이터 원본을 선택합니다. 최근 검사에서 해당 데이터 원본에 대한 기존 검사 목록을 보거나 검사 탭에서 모든 검사를 볼 수 있습니다.

  3. 관리하려는 검사를 선택합니다. 그 후에, 다음 작업을 수행할 수 있습니다.

    • 검사 편집을 선택하여 검사를 편집합니다.
    • 검사 실행 취소를 선택하여 진행 중인 검사를 취소합니다.
    • 검사 삭제를 선택하여 검사를 삭제합니다.

참고

  • 검사를 삭제해도 이전 검사에서 만든 카탈로그 자산은 삭제되지 않습니다.
  • 원본 테이블이 변경되고 Microsoft Purview의 스키마 탭에서 설명을 편집한 후 원본 테이블을 다시 검사하면 자산이 더 이상 스키마 변경으로 업데이트되지 않습니다.

계보

Snowflake 원본을 검사한 후 데이터 카탈로그를 찾아보거나 데이터 카탈로그검색 하여 자산 세부 정보를 볼 수 있습니다.

자산 -> 계보 탭으로 이동하면 해당되는 경우 자산 관계를 볼 수 있습니다. 지원되는 Snowflake 계보 시나리오에서 지원되는 기능 섹션을 참조하세요. 일반적인 계보에 대한 자세한 내용은 데이터 계보계보 사용자 가이드를 참조하세요.

눈송이 계보 보기

참고

다른 데이터베이스의 테이블에서 뷰를 만든 경우 세미콜론의 이름을 사용하여 모든 데이터베이스를 동시에 검색합니다(;) 목록.

문제 해결 팁

  • 원본 등록 단계에서 계정 식별자를 확인합니다. 전면에 부품을 포함하지 https:// 마세요.
  • 검색 설정 페이지에서 웨어하우스 이름 및 데이터베이스 이름이 대문자인지 확인합니다.
  • 키 자격 증명 모음을 확인합니다. 암호에 오타가 없는지 확인합니다.
  • Microsoft Purview에서 설정한 자격 증명을 확인합니다. 지정하는 사용자에게는 검색하려는 웨어하우스와 데이터베이스 모두에 필요한 액세스 권한이 있는 기본 역할이 있어야 합니다. 검사에 필요한 권한을 참조하세요. 를 사용하여 DESCRIBE USER; Microsoft Purview에 대해 지정한 사용자의 기본 역할을 확인합니다.
  • Snowflake의 쿼리 기록을 사용하여 작업이 들어오는지 확인합니다.
    • 계정 identifer 또는 암호에 문제가 있는 경우 활동이 표시되지 않습니다.
    • 기본 역할에 문제가 있는 경우 최소한 문을 확인해야 USE WAREHOUSE . . . 합니다.
    • QUERY_HISTORY_BY_USER 테이블 함수를 사용하여 연결에서 사용되는 역할을 식별할 수 있습니다. 전용 Microsoft Purview 사용자를 설정하면 문제 해결이 더 쉬워질 것입니다.

다음 단계

원본을 등록했으므로 아래 가이드에 따라 Microsoft Purview 및 데이터에 대해 자세히 알아보세요.