다음을 통해 공유


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 를 변수로 사용하는 저장 프로시저입니다.

필수 구성 요소

검사에 필요한 권한

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. 형식<account_identifier>.snowflakecomputing.com으로 서버 URL을 입력합니다(예: orgname-accountname.snowflakecomputing.com). Snowflake 계정 식별자에 대해 자세히 알아봅니다. 이 URL은 Snowflake 자산의 정규화된 이름의 일부로 사용되며, 스캔하는 동안 Microsoft Purview가 Snowflake에 연결할 수 있는 기본 엔드포인트입니다.

  3. 해당하는 경우 추가 호스트를 추가합니다. 스캔 작업이 서버 URL 이외의 Snowflake 엔드포인트에 연결되도록 하려면 지정합니다. 검사 설정 중에 연결에 대한 호스트를 선택할 수 있습니다.

    이미 Snowflake를 검사했지만 다른 엔드포인트를 사용하도록 전환하려는 경우(예: 퍼블릭 엔드포인트에서 프라이빗 엔드포인트로) 데이터 원본에 호스트를 추가하고 검색에서 연결하도록 해당 호스트를 선택하여 Microsoft Purview가 이전과 동일한 정규화된 이름으로 자산을 생성하도록 할 수 있습니다.

    데이터 원본을 등록할 때 Microsoft Purview는 서버 URL 및 추가 호스트가 기존 원본과 겹치지 않는 검사 고유성을 수행합니다.

  4. 목록에서 컬렉션을 선택합니다.

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

    원본 등록 옵션

검사

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

검사에 대한 인증

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

검사 만들기 및 실행

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

  1. Microsoft Purview 거버넌스 포털에서 원본으로 이동합니다.

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

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

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

    1. 이름: 검사의 이름

    2. 통합 런타임을 통해 연결: 시나리오에 따라 Azure 자동 해결 통합 런타임, 관리형 VNet IR 또는 SHIR을 선택합니다. 시나리오에 적합한 통합 런타임 구성 선택에서 자세히 알아보세요. 관리형 VNet IR을 사용하여 프라이빗 링크를 통해 Snowflake에 연결하려면 관리형 프라이빗 엔드포인트를 통해 Snowflake에 연결 의 단계에 따라 프라이빗 엔드포인트를 먼저 설정합니다.

    3. 연결 호스트: 스캔하는 동안 Snowflake에 대한 연결을 설정하는 데 사용되는 엔드포인트를 선택합니다. 서버 URL 또는 데이터 원본에서 구성한 추가 호스트 중에서 선택할 수 있습니다.

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

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

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

      참고

      둘 이상의 데이터베이스 instance 이름을 지정하면 분류가 테이블에 적용되지 않습니다.

      허용되는 데이터베이스 이름 패턴은 정적 이름이거나 와일드카드 %를 포함할 수 있습니다. 예: : A%;%B;%C%;D

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

      를 사용하는 허용 가능한 스키마 이름 패턴은 정적 이름이거나 와일드카드 %를 포함할 수 있습니다. 예: : A%;%B;%C%;D

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

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

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

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

      참고

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

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

      참고

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

      Snowflake 스캔

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

  6. 계속을 선택합니다.

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

    참고

    테이블 이름, 뷰 이름, 스키마 이름 또는 데이터베이스 이름에 특수 문자가 포함된 경우 테이블 또는 뷰에는 분류가 적용되지 않습니다.

    참고

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

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

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

검사 및 검사 실행 보기

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

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

검사 관리

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

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

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

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

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

참고

  • 검사를 삭제해도 이전 검사에서 만든 카탈로그 자산은 삭제되지 않습니다.

계보

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

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

눈송이 계보 보기

참고

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

관리형 프라이빗 엔드포인트를 통해 Snowflake에 연결

이 섹션에서는 Microsoft Purview에서 Azure의 Snowflake로 PE(관리형 프라이빗 엔드포인트)를 설정하는 데 필요한 단계를 설명합니다. Azure Private Link 및 Snowflake에 대해 자세히 알아보세요.

  1. Snowflake 계정에서 대상 엔드포인트 및 리소스 ID를 검색합니다. 계정 관리 역할로 시스템 함수 SYSTEM$GET_PRIVATELINK_CONFIG()를 실행하고 다음 속성의 값을 적어둡니다.

    • privatelink-pls-id
    • privatelink-account-url
    • regionless-privatelink-account-url
    • privatelink_ocsp-url
    use role accountadmin; 
    select key, value::varchar from table(flatten(input=>parse_json(SYSTEM$GET_PRIVATELINK_CONFIG())));
    
  2. Microsoft Purview에서 Snowflake에 대한 관리되는 프라이빗 엔드포인트를 만듭니다.

    1. 관리되는 Virtual Network Integration Runtime 만들기의 단계를 따릅니다. 이미 있는 경우 Snowflake PE를 지원하는 버전 2에 있는지 확인합니다.
    2. Snowflake에 대한 관리되는 프라이빗 엔드포인트를 만듭니다. 관리형 프라이빗 엔드포인트 ->+ 새로 만들기 ->Snowflake로 이동하여 다음 정보를 입력합니다.
      • 리소스 ID 또는 별칭: 검색한 privatelink-pls-id 값을 입력합니다.
      • 정규화된 도메인 이름: privatelink_ocsp-url, regionless-privatelink-account-urlprivatelink-account-url을 추가합니다.

    Snowflake에 대한 관리되는 프라이빗 엔드포인트 설정

  3. PE를 만든 후 프로비저닝 상태를 성공 됨으로 표시하고 승인 상태를 보류 중으로 볼 수 있습니다. PE를 열고 세부 정보 페이지에서 관리되는 프라이빗 엔드포인트 리소스 ID 를 찾습니다.

  4. Snowflake 기술 지원에 문의하고 Snowflake 가 이 PE를 승인할 수 있도록 리소스 ID를 제공합니다.

  5. Snowflake 지원에서 PE가 승인되었음을 확인하면 관리형 프라이빗 엔드포인트 승인 상태가 Microsoft Purview에서 승인됨 으로 표시됩니다.

  6. 데이터 원본을 등록 하고 검사를 설정합니다. 검사를 설정할 때 Snowflake PE와 연결된 관리형 VNet IR을 선택합니다.

문제 해결 팁

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

다음 단계

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