Snowflake Data Clean Rooms 환경 설치하기

시작하기 전에

해당 계정의 모든 사용자를 위한 Clean Room 환경이 Snowflake 계정에 설치됩니다.

계정 내 사용자는 Clean Rooms 관리자에 의해 Clean Room 환경에 대한 액세스 권한이 부여됩니다.

  • 계정에 Clean Room 환경이 설치되어 있지 않은 경우: 이 페이지의 설치 지침을 따르십시오.

  • 클린룸에 조인하라는 이메일 초대장을 받은 경우: 링크를 따라 이동하고 지시가 있는 경우 이메일과 새 비밀번호를 입력합니다. 그러면 클린룸 UI가 열리고 클린룸에 조인하여 사용할 수 있습니다. 초대장을 받은 이메일 주소를 제공해야 합니다. 비밀번호는 클린룸 계정에만 적용됩니다. Snowflake 비밀번호는 재사용하지 않는 것이 좋습니다.

  • 계정에 Clean Room 환경이 설치되어 있고 이에 액세스하려는 경우: Clean Rooms 관리자에게 API, UI 또는 둘 다에 대한 액세스 권한을 요청하십시오.

개요

Snowflake Data Clean Rooms는 두 가지 환경으로 구성됩니다.

  • Clean Rooms UI: 사용자가 쉽게 분석을 생성하거나 실행할 수 있는 코드 없는 브라우저 기반 환경입니다.

  • 클린룸 API: 클린룸을 생성 및 관리하고 분석을 실행하는 데 사용되는 저장 프로시저 세트에 액세스합니다.

이러한 환경은 비슷하지만 정확히 동등하지는 않은 기능을 제공합니다. Clean Rooms 관리자는 Snowflake 계정에 구성 요소 중 하나 또는 두 가지를 모두 설치한 다음 사용자에게 각 환경에 대한 액세스 권한을 개별적으로 부여할 수 있습니다.

Snowflake Data Clean Rooms 설치 요구 사항

계정 및 사용자 요구 사항

Snowflake 계정에 Snowflake Data Clean Rooms 를 설치하기 위한 요구 사항은 다음과 같습니다.

  • 계정은 필수 Snowflake Edition 어야 합니다.

    • Clean Rooms를 만들려면 Enterprise Edition 이상이 있어야 합니다.

    • 다른 계정에서 만든 Clean Room에 참여하여 사용하려면 Standard Edition 이상이 있어야 합니다.

  • 독자 계정은 클린룸 애플리케이션을 설치하고 실행하는 데 필요한 데이터 공유를 허용하지 않으므로 독자 계정은 지원되지 않습니다.

  • 계정은 서비스 계정에서 인증에 사용하는 키 페어 인증 을 허용해야 합니다.

  • 데이터 공유 약관에 동의해야 합니다. Snowflake 고객 제어 데이터 공유 기능 약관 을 수락하지 않은 경우 Snowflake 지원팀 에 문의하시기 바랍니다. Snowflake Data Clean Rooms는 Snowflake Service의 일부로 제공되고 Snowflake 고객 제어 데이터 공유 기능 약관과 Snowflake 사용 제한 정책 을 포함한 Snowflake Service 약관이 적용되는 목록 을 활용합니다.

  • 계정 수준의 기본 데이터 정렬 을 정의해서는 안 됩니다. 다음 명령을 실행하여 데이터 정렬 상태를 확인할 수 있습니다. SHOW PARAMETERS LIKE 'DEFAULT_DDL_COLLATION' IN ACCOUNT;

  • (Clean Rooms UI 만 해당) Snowflake 계정은 용량 계정이어야 합니다. 계정은 선불 용량 약정이 있는 계정입니다. Snowflake 온디맨드 계정은 Clean Rooms UI 에 액세스할 수 없습니다.

  • (Clean Rooms UI 만 해당) 지원되는 인증자 앱 과 함께 다단계 인증 (MFA)을 사용해야 합니다.

이러한 요구 사항을 모두 충족하지 못하여 업그레이드가 필요한 경우 Snowflake 지원 으로 문의하십시오.

설치 관리자 요구 사항

다음은 Clean Room 환경을 설치하는 사람에 대한 요구 사항입니다.

  • 해당 계정에 Clean Room 환경을 설치하려면 Snowflake 계정에 ACCOUNTADMIN 역할이 있어야 합니다.

  • ACCOUNTADMIN 역할이 있는 사용자에게는 사용자 오브젝트에 대해 정의된 유효한 이름, 성 및 이메일이 있어야 합니다. 확인하려면 DESCRIBE USER 를 실행하십시오.

Clean Room 환경 설치하기

Snowflake 계정에 Clean Room 환경을 설치하려면 다음 단계를 따르십시오.

항상 네이티브 앱을 설치해야 하지만(1단계), 그 후에는 브라우저 사용을 위한 클린룸 UI나 코드 사용을 위한 클린룸 API 또는 둘 다를 활성화할 수 있습니다. 조직의 코드 전문가 및 비전문가를 모두 지원하려면 UI와 API 둘 다 설치하는 것이 좋습니다.

1. 네이티브 애플리케이션 설치하기

Marketplace에서 네이티브 애플리케이션을 설치합니다.

  1. 현재 역할을 ACCOUNTADMIN 으로 설정합니다.

  2. Snowflake Marketplace에서 Snowflake Data Clean Rooms 애플리케이션 을 설치합니다.

  3. Get 을 선택하고 기본 옵션을 수락합니다.

설치하는 데 몇 분 정도 걸립니다.

2. 클린룸 API 설치

클린룸 API는 클린룸을 프로그래밍 방식으로 생성하고 사용하는 데 사용됩니다.

Snowflake 계정에서 클린룸 API를 설치하는 단계는 다음과 같습니다.

  1. 네이티브 애플리케이션을 설치한 후 Snowflake에서 실행합니다. Data products » Apps » Snowflake Data Clean Rooms » Launch app. 그러면 SQL 명령이 포함된 워크시트가 열립니다.

  2. 다음 참고 사항을 통해 SQL 명령을 실행하여 클린룸 API를 설치합니다.

    • 설치 중에 네이티브 애플리케이션의 이름을 변경한 경우 스크립트 설명에 표시된 대로 스크립트를 수정해야 합니다.

    • 실행하기 전에 전체 설치 스크립트를 검토하려면 DRY_RUN=TRUE 스크립트 줄의 주석 처리를 해제하고 해당 줄까지의 모든 명령을 실행하여 스크립트 내용을 확인하십시오. 해당 명령에 의해 노출되는 설치 스크립트를 수동으로 실행하면 불완전한 설치가 될 수 있으므로 수동으로 실행하지 마십시오.

    • 설치하는 데 몇 분 정도 걸립니다.

  3. API 에 액세스할 수 있는지 확인합니다.

    USE ROLE samooha_app_role;
    USE WAREHOUSE app_wh;
    CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.LIBRARY.CHECK_MOUNT_STATUS();
    
    Copy

    FALSE 가 반환되면 아래 문제 해결 섹션을 참조하십시오.

  4. API 에 Snowflake 계정의 다른 사용자에게 액세스 권한을 부여합니다.

    • Clean Rooms를 만들고 관리할 수 있는 전체 기능 을 가진 사용자를 추가하려면 GRANT ROLE SAMOOHA_APP_ROLE to USER USER 를 실행합니다.

    • 컨슈머 실행 권한만 있는 사용자를 추가하려면 하나 이상의 Snowflake 역할을 만들고 사용자에게 이 역할에 대한 액세스 권한을 부여하십시오. 그런 다음 consumer.grant_run_on_cleanrooms_to_role 을 호출하여 특정 Clean Rooms에 대한 실행 액세스 권한을 부여합니다.

  5. (선택 사항) Clean Rooms UI 를 설치하여 코드 없이 Clean Rooms에 액세스하거나 예약 쿼리와 같은 기타 기능을 사용할 수 있도록 합니다.

3. Clean Rooms UI 활성화하기

클린룸 UI는 클린룸 계정을 관리하고 클린룸을 만들고 분석을 실행할 수 있는 간편한 코드 없는 환경을 제공합니다. 또한 예약된 쿼리, 서드 파티 활성화, 미리 정의된 유용한 템플릿 등 클린룸 API에서는 사용할 수 없는 일부 :ref:`추가 기능<label-dcr_web_app_api_comparison>`도 제공합니다.

Snowflake 계정에서 Clean Rooms UI 를 활성화하는 방법은 다음과 같습니다.

  1. Clean Rooms UI 가 Snowflake 계정에 액세스할 수 있도록 네트워크 정책을 구성합니다. (Snowflake 계정이 네트워크 정책을 사용하여 네트워크 트래픽을 제어하는 경우에만 필요합니다.)

  2. UI 설정 완료. 이 단계에서는 클린룸 UI가 Snowflake와 통신하는 데 사용하는 서비스 사용자 [*]_를 구성합니다.

    1. Snowflake 자격 증명으로 Clean Rooms UI 에 로그인합니다.

    2. Admin » Snowflake Admin » Connect to Snowflake account 를 엽니다.

    3. Enable the Data Clean Rooms UI`에서 :ui:`Quick Setup 또는 :ui:`Manual Setup`을 선택합니다.

      • Quick Setup - 서비스 사용자를 생성합니다. 이 계정에 대한 고유한 서비스 사용자 이름을 지정합니다.

      • Manual Setup - 서비스 사용자를 직접 만들거나 기존 서비스 사용자를 재사용하려면 이 옵션을 선택합니다. 클린룸은 서비스 사용자를 제어하고 수정하므로 서비스 사용자가 다른 용도로 사용되지 않도록 하세요. 서비스 사용자를 만드는 방법을 알아보세요.

    4. 고유한 서비스 사용자 이름을 입력하고 :ui:`Finish`를 선택합니다.

  3. 다음 섹션에 설명된 대로 **클린룸 환경을 구성**합니다.

클린룸 환경 구성

네이티브 애플리케이션, API , UI 를 설치한 후 환경을 구성하고 사용자를 추가해야 합니다.

  • 클린룸 UI 관리자 및 사용자를 추가합니다. 관리자는 일상적으로 환경을 관리하며 공동 작업자 관리 및 서드 파티 커넥터 구성과 같은 다양한 작업을 수행할 수 있습니다. 사용자는 클린룸을 만들거나 조인하고 분석을 실행할 수 있습니다.

  • 개발자를 추가합니다. 개발자에게 API 액세스 권한을 부여하여 개발자가 계정에서 Clean Rooms를 만들거나 소비할 수 있도록 합니다.

  • 클라우드 간 자동 복제를 활성화합니다. 기본적으로 Clean Rooms는 Clean Room 생성자와 동일한 기본 클라우드 리전에 있는 컨슈머와만 공유할 수 있습니다. 공급자가 다른 클라우드 리전에 있는 컨슈머와 Clean Rooms를 공유할 수 있도록 하려면 계정에 대해 클라우드 간 자동 복제를 사용하도록 설정해야 합니다.

  • UI에서 사용 가능한 데이터 세트를 등록합니다. 클린룸 UI를 사용하는 공동 작업자는 클린룸 UI 관리자가 사전 등록한 데이터만 자신의 클린룸으로 가져올 수 있습니다.

설치 문제 해결하기

이 섹션을 사용하여 이 항목의 단계를 완료한 후 발생할 수 있는 문제를 해결합니다.

증상: 권한 부족

해결책: 클린룸 UI와 연결된 IP 주소가 네트워크 정책에서 허용되는지 확인하세요. 이러한 IP 주소 목록은 네트워크 정책 구성하기 섹션을 참조하세요.

증상: 설치는 성공했지만, 클린룸 UI가 올바르게 작동하지 않습니다.

해결책 #1: DESCRIBE USER 명령을 사용하여 Snowflake를 구성하는 데 사용한 Snowflake 사용자의 이름, 성, 이메일이 유효한지 다시 한 번 확인합니다. 사용자가 누락한 항목이 있으면 ALTER USER 명령을 실행하여 지정합니다.

해결책 #2: Snowflake Data Clean Rooms 용 Snowflake Native App 을 제거한 다음 다시 설치해 봅니다.

  • 앱을 제거하려면 Snowflake Native App 제거 섹션을 참조하십시오. 기본 이름으로 애플리케이션을 설치한 경우 이름은 SAMOOHA_BY_SNOWFLAKE입니다.

  • 앱을 다시 설치하려면:

    1. 클린룸 UI에 로그인.

    2. 왼쪽 탐색 창에서 Snowflake Admin 을 선택합니다.

    3. Login to Snowflake 를 선택하고 ACCOUNTADMIN 역할이 있는 Snowflake 사용자로 인증합니다.

    4. DESCRIBE USER 명령을 사용하여 방금 인증에 사용한 ACCOUNTADMIN 역할이 있는 Snowflake 사용자에게 유효한 이름, 성 및 이메일이 있는지 확인합니다. 사용자가 누락한 항목이 있으면 ALTER USER 명령을 실행하여 지정합니다.

    5. Snowflake Native App 을 설치하려면 Install 을 선택합니다.

    6. 설치 과정에서는 애플리케이션의 기본 이름을 그대로 사용합니다.

UI 서비스 사용자를 수동으로 만들기

클린룸 UI를 설치할 때 설치 시 서비스 사용자를 생성하도록 하거나 생성한 서비스 사용자를 제공할 수 있습니다. |sf-web-interface|에서 서비스 사용자를 만드는 방법은 다음과 같습니다.

Snowflake 관리자 자격 증명으로 |sf-web-interface|에 로그인하고 다음 SQL 예시와 같이 사용자를 생성합니다.

-- Create the user.
-- Clean rooms will set the type to SERVICE for you.

USE ROLE USERADMIN;
CREATE USER <SERVICE-USER-USERNAME>;
Copy

중요

클린룸은 이 사용자의 인증 제어, 네트워크 정책 및 기타 특성을 변경합니다. 이 사용자를 클린룸 환경에 부여한 후에는 직접 사용할 수 없습니다.