Snowflake Connector for Google Analytics Raw Data 설치 및 구성하기

이 항목에서는 Snowsight 를 통해 Snowflake Connector for Google Analytics Raw Data 를 설치하고 구성하는 방법에 대한 정보를 제공합니다.

Snowflake Connector for Google Analytics Raw Data 설치하기

커넥터를 설치하려면 다음을 수행하십시오.

  1. ACCOUNTADMIN 역할을 가진 사용자로 Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Data Products » Marketplace 를 선택합니다.

  3. Snowflake Connector for Google Analytics Raw Data 를 검색한 다음 커넥터에 알맞은 타일을 선택합니다.

  4. Snowflake Connector for Google Analytics Raw Data 페이지에서 Get 을 선택합니다.

    그러면 설치 프로세스의 초기 부분을 시작하는 데 사용하는 대화 상자가 표시됩니다.

    대화 상자에서 다음을 구성합니다.

    1. Options->Application name 필드에서 커넥터 인스턴스의 데이터베이스로 사용할 데이터베이스를 입력합니다. 이 데이터베이스는 자동으로 생성됩니다.

    2. Warehouse used for installation 필드에서 커넥터 설치에 사용할 웨어하우스를 선택합니다.

      참고

      이것은 커넥터가 Google Analytics에서 데이터를 동기화하는 데 사용하는 것과 동일한 웨어하우스가 아닙니다. 이후 단계에서 이 목적으로 별도의 웨어하우스를 생성합니다.

    3. Get 을 선택합니다.

  5. Open 를 선택합니다.

    대화 상자가 닫히고 Snowflake Connector for Google Analytics Raw Data 페이지에 커넥터 구성과 관리를 위한 UI가 표시됩니다.

Snowflake Connector for Google Analytics Raw Data 구성하기

커넥터를 구성하려면 다음을 수행하십시오.

  1. ACCOUNTADMIN 역할을 가진 사용자로 Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Data Products » Apps 를 선택합니다.

  3. Snowflake Connector for Google Analytics Raw Data 를 선택합니다.

    구성 마법사가 시작됩니다.

  4. 전제 조건

    1. 목록의 모든 전제 조건이 충족되었는지 확인하고 완료로 표시하십시오.

    2. Start configuration 를 클릭합니다.

  5. 웨어하우스, 데이터베이스, 스키마 및 역할 구성하기

    참고

    기본적으로, 필드는 커넥터를 구성할 때 생성되는 오브젝트의 이름으로 설정됩니다. 이러한 필드에 새 오브젝트를 사용하는 것이 좋습니다. 하지만 필요한 경우(예: 커넥터를 다시 설치하는 경우) 기존 오브젝트의 이름을 지정할 수 있습니다.

    다음 필드를 채우고 화면 하단에서 Configure 를 선택합니다.

    필드

    설명

    Warehouse

    커넥터에 대한 새로운 전용 가상 웨어하우스의 식별자를 입력하거나 기존 식별자를 선택합니다.

    계정에 고유한 이름을 지정하십시오. 웨어하우스 이름은 유효한 오브젝트 식별자 여야 합니다.

    참고

    커넥터 설치 시작 시 선택한 것과 동일한 웨어하우스를 지정하지 마십시오.

    구성 프로세스에서는 지정된 이름으로 새 X-Small 웨어하우스를 생성합니다.

    또는 기존 웨어하우스를 선택할 수도 있습니다.

    Destination Database

    Snowflake의 Google Analytics 데이터에 대한 테이블이 있는 스키마를 포함할 새 데이터베이스의 식별자입니다. Google Analytics에서 다운로드한 데이터가 여기에 저장됩니다.

    계정에 고유한 이름을 지정하십시오. 데이터베이스 이름은 유효한 오브젝트 식별자 여야 합니다.

    구성 프로세스에서는 지정된 이름으로 새 데이터베이스를 생성합니다.

    또는 기존 데이터베이스를 선택할 수 있습니다.

    Destination Schema

    Snowflake의 Google Analytics 데이터를 포함할 새 스키마의 식별자입니다.

    Snowflake Connector for Google Analytics Raw Data 는 Google Analytics 데이터를 이 스키마의 테이블로 수집합니다.

    스키마 이름은 유효한 오브젝트 식별자 여야 합니다.

    구성 프로세스에서는 지정된 이름으로 새 스키마를 생성합니다.

    또는 기존 스키마를 선택할 수 있습니다.

    Role

    커넥터에 대한 새로운 사용자 지정 역할의 식별자입니다.

    계정에 고유한 이름을 지정하십시오. 역할 이름은 유효한 오브젝트 식별자 여야 합니다.

    이 역할은 수집된 데이터에 대한 읽기 액세스 권한을 갖는 계정 수준 역할입니다.

    또는 기존 역할을 선택할 수도 있습니다.

    구성 프로세스가 완료되는 데 다소 시간이 걸릴 수 있습니다. 구성 프로세스가 성공적으로 완료되면 구성 마법사가 인증 으로 진행됩니다.

  6. 인증 구성하기

    Snowflake Connector for Google Analytics Raw Data 는 OAuth서비스 계정 이라는 두 가지 인증 방법을 지원합니다. 각 방법에는 GCP 프로젝트에 추가 구성이 필요합니다.

    각 인증을 구성하는 방법에 대한 자세한 내용은 다음을 참조하십시오.

    인증 방법 서비스 계정 을 사용하는 경우 서비스 계정 자격 증명이 포함된 JSON 파일을 제공하십시오.

    또는 다음 필드를 채울 수 있습니다.

    필드

    설명

    Client email

    Google Cloud Platform 프로젝트에서 서비스 계정 생성 과정에서 생성된 Google 서비스 계정 이메일입니다.

    Private key

    Google Cloud Platform 프로젝트에서 서비스 계정 생성 과정에서 생성된 개인 키입니다.

    —–BEGIN PRIVATE KEY—–, —–END PRIVATE KEY—–\n 기호를 제거했는지 확인하십시오.

    인증 방법 Oauth2 를 사용하는 경우 다음 필드를 채웁니다.

    필드

    설명

    Client id

    Google Cloud Platform 프로젝트에서 생성된 클라이언트 ID입니다.

    Client secret

    Google Cloud Platform 프로젝트에서 생성된 클라이언트 시크릿 ID입니다.

    Connect 선택

    Oauth2 인증을 선택한 경우 Google OAuth2 인증 대화 상자 흐름이 표시됩니다.

    대화 상자에서 Google에 로그인하여 Google OAuth2 인증 흐름을 완료하십시오.

    인증 프로세스가 완료되는 데 다소 시간이 걸릴 수 있습니다.

  7. 원본 검증하기

성공적으로 연결되면 커넥터가 Google Analytics 데이터에 액세스할 수 있는지 확인합니다. 오류가 발생하면 커넥터에서 추가 지침을 안내합니다.

프로세스가 성공적으로 완료되면 수집 구성을 시작할 수 있습니다. 자세한 내용은 Snowflake Connector for Google Analytics Raw Data 의 데이터 수집 설정하기 섹션을 참조하십시오.

SQL 문을 사용하여 Snowflake Connector for Google Analytics Raw Data 구성하기

SQL 문을 사용하여 커넥터를 구성하려면 다음을 수행하십시오.

참고

커넥터를 프로비저닝하고 연결을 구성하려면 커넥터 설치 데이터베이스의 인스턴스 역할을 하는 데이터베이스의 PUBLIC 스키마에 정의된 저장 프로시저를 사용해야 합니다.

이러한 저장 프로시저를 호출하기 전에 해당 데이터베이스를 세션에 사용할 데이터베이스로 선택하십시오.

예를 들어 해당 데이터베이스의 이름이 snowflake_connector_for_google_analytics_raw_data 인 경우 다음 명령을 실행합니다.

USE DATABASE snowflake_connector_for_google_analytics_raw_data;
Copy

웨어하우스, 데이터 소유자 역할, 대상 데이터베이스 준비하기

  1. 커넥터 애플리케이션에 지정된 웨어하우스에 대한 사용 권한과 작업 실행 권한을 부여합니다.

    USE ROLE accountadmin;
    CREATE WAREHOUSE google_analytics_raw_data_warehouse with warehouse_size = 'X-Small';
    GRANT USAGE ON WAREHOUSE google_analytics_raw_data_warehouse TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    GRANT EXECUTE TASK ON ACCOUNT TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    
    Copy
  2. 데이터 소유자 역할을 생성합니다.

    USE ROLE accountadmin;
    CREATE OR REPLACE ROLE google_analytics_raw_data_resources_provider;
    GRANT CREATE DATABASE ON ACCOUNT TO ROLE google_analytics_raw_data_resources_provider;
    GRANT USAGE ON WAREHOUSE google_analytics_raw_data_warehouse TO ROLE google_analytics_raw_data_resources_provider;
    GRANT ROLE google_analytics_raw_data_resources_provider TO USER ADMIN;
    
    Copy
  3. 대상 데이터베이스 및 스키마를 만듭니다.

    특히 커넥터를 다시 설치하는 경우 기존 대상 데이터베이스 및 스키마를 사용할 수도 있습니다.

    USE ROLE google_analytics_raw_data_resources_provider;
    CREATE DATABASE google_analytics_raw_data_dest_db;
    CREATE SCHEMA google_analytics_raw_data_dest_db.google_analytics_raw_data_dest_schema;
    
    Copy
  4. 대상 데이터베이스에 필요한 권한 부여를 애플리케이션에 추가합니다.

    USE ROLE accountadmin;
    GRANT USAGE ON DATABASE google_analytics_raw_data_dest_db TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    GRANT USAGE ON SCHEMA google_analytics_raw_data_dest_db.google_analytics_raw_data_dest_schema TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    
    GRANT CREATE TABLE ON SCHEMA google_analytics_raw_data_dest_db.google_analytics_raw_data_dest_schema TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    GRANT CREATE VIEW ON SCHEMA google_analytics_raw_data_dest_db.google_analytics_raw_data_dest_schema TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    
    Copy

커넥터 프로비저닝하기

  1. PROVISION_CONNECTOR 프로시저를 호출합니다.

    웨어하우스 이름, 대상 데이터베이스 및 스키마, 데이터 소유자 역할을 전달합니다. 이러한 값은 대/소문자를 구분합니다.

    CALL PROVISION_CONNECTOR(
        'GOOGLE_ANALYTICS_RAW_DATA_WAREHOUSE',
        'GOOGLE_ANALYTICS_RAW_DATA_DEST_DB.GOOGLE_ANALYTICS_RAW_DATA_DEST_SCHEMA',
        'GOOGLE_ANALYTICS_RAW_DATA_RESOURCES_PROVIDER'
    );
    
    Copy

GCP에 연결하는 데 필요한 Snowflake 오브젝트 만들기

  1. 서비스 계정에 대한 보안 통합을 만듭니다.

    먼저 서비스 계정 키 파일이 필요합니다. 만드는 방법에 대한 자세한 내용은 Google Cloud Platform(GCP)에 대한 서비스 계정 인증 구성하기 섹션을 참조하십시오.

    CREATE SECURITY INTEGRATION
    snowflake_connector_for_google_analytics_raw_data_security_integration
    type = api_authentication
    auth_type = oauth2
    oauth_client_id = '<value of client_id from the JSON key file>'
    oauth_token_endpoint = 'https://oauth2.googleapis.com/token'
    enabled = true
    oauth_allowed_scopes = (
        'https://www.googleapis.com/auth/bigquery.readonly',
        'https://www.googleapis.com/auth/cloudplatformprojects.readonly'
    )
    oauth_assertion_issuer = '<value of client_email from the JSON key file>'
    oauth_grant='JWT_BEARER'
    oauth_client_secret = '<value of private_key from the JSON key file with no delimiters or newlines>';
    
    Copy
  2. 보안 통합을 사용하여 시크릿을 만듭니다.

    CREATE DATABASE google_analytics_raw_data_connector_secret;
    CREATE SCHEMA google_analytics_raw_data_connector_secret.oauth;
    
    USE SCHEMA google_analytics_raw_data_connector_secret.oauth;
    
    CREATE OR REPLACE SECRET google_analytics_raw_data
    type = oauth2
    api_authentication = snowflake_connector_for_google_analytics_raw_data_security_integration;
    
    Copy
  3. 커넥터 애플리케이션에 시크릿 관련 권한을 제공합니다.

    GRANT USAGE ON DATABASE google_analytics_raw_data_connector_secret TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    GRANT USAGE ON SCHEMA google_analytics_raw_data_connector_secret.oauth TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    GRANT READ ON SECRET google_analytics_raw_data_connector_secret.oauth.google_analytics_raw_data TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    
    Copy
  4. 외부 액세스를 구성합니다.

    allowed_authentication_secrets 에 전달된 시크릿 경로는 대/소문자를 구분한다는 점에 유의하십시오.

    USE SCHEMA google_analytics_raw_data_connector_secret.oauth;
    
    CREATE NETWORK RULE
    google_analytics_raw_data_allow_rule
    mode = EGRESS
    type = HOST_PORT
    value_list = (
        'www.googleapis.com',
        'bigquery.googleapis.com',
        'bigquerystorage.googleapis.com',
        'cloudresourcemanager.googleapis.com',
        'oauth2.googleapis.com'
    );
    
    CREATE EXTERNAL ACCESS INTEGRATION
    google_analytics_raw_data_external_access_integration
    allowed_network_rules = (google_analytics_raw_data_allow_rule)
    allowed_authentication_secrets = ('GOOGLE_ANALYTICS_RAW_DATA_CONNECTOR_SECRET.OAUTH.GOOGLE_ANALYTICS_RAW_DATA')
    enabled = true;
    
    GRANT USAGE ON INTEGRATION google_analytics_raw_data_external_access_integration TO APPLICATION snowflake_connector_for_google_analytics_raw_data;
    
    Copy

GCP와의 연결 구성하기

  1. CONFIGURE_CONNECTION 프로시저를 호출합니다.

    외부 액세스 통합의 이름과 시크릿의 전체 경로를 전달합니다. 이러한 값은 대/소문자를 구분합니다.

    CALL CONFIGURE_CONNECTION(
        'GOOGLE_ANALYTICS_RAW_DATA_EXTERNAL_ACCESS_INTEGRATION',
        'GOOGLE_ANALYTICS_RAW_DATA_CONNECTOR_SECRET.OAUTH.GOOGLE_ANALYTICS_RAW_DATA'
    );
    
    Copy
  2. 연결 상태를 확인합니다.

    CALL CONNECTION_STATUS();
    
    Copy

    오류가 없으면 Snowflake Connector for Google Analytics Raw Data 의 데이터 수집 설정하기 에 따라 Google Analytics 속성을 활성화할 수 있습니다.