Snowflake Connector for Google Analytics Raw Data 가 수집한 데이터에 액세스하기¶
이 항목에서는 Snowflake 계정에서 Google Analytics의 원시 데이터에 액세스하는 방법을 설명합니다.
이 항목의 내용:
동기화를 위해 구성된 BigQuery의 각 속성에 대해 Snowflake Connector for Google Analytics Raw Data 는 다음을 생성합니다.
속성 이름과 동일한 이름을 가진
ANALYTICS_propertyId
테이블. 이 테이블에는 원시 일일 데이터가 포함됩니다. 테이블의 각 레코드는 별도의 행에 저장되고 Google Analytics 이벤트 데이터는 VARIANT 유형의 단일 열에 저장됩니다.위 테이블의 이벤트 데이터를 별도의 열로 매핑하는
ANALYTICS_propertyId__VIEW
뷰.속성 이름과 동일한 이름을 가진
ANALYTICS_INTRADAY_propertyId
테이블. 이 테이블에는 원시 일중 데이터가 포함됩니다.위 테이블의 일중 이벤트 데이터를 별도의 열로 매핑하는
ANALYTICS_INTRADAY_propertyId__VIEW
뷰.
위 테이블과 뷰의 임시 소유자는 Snowflake Connector for Google Analytics Raw Data 입니다. 소유권은 커넥터 제거 중에 이전되어야 합니다. 자세한 내용은 Snowflake Connector for Google Analytics Raw Data 제거 및 재설치하기 섹션을 참조하십시오.
다음 섹션에서는 이 데이터에 액세스할 권한을 부여하는 방법과 이러한 테이블과 뷰에서 데이터에 액세스하는 방법을 설명합니다.
Snowflake에서 Google Analytics 데이터에 액세스하는 권한 부여하기¶
Snowflake Connector for Google Analytics Raw Data 가 Snowflake와 데이터를 동기화한 후 다음 조건을 모두 충족하는 경우 data_owner_role
을 사용하여 데이터 또는 다른 역할에 액세스할 수 있습니다.
Snowflake Connector for Google Analytics Raw Data 에서 수집한 데이터를 포함하는 데이터베이스와 스키마에 대한 USAGE 권한이 있습니다.
이 스키마 내의 테이블 또는 뷰에 대한 SELECT 권한이 있는 DATA_READER 애플리케이션 역할이 부여됩니다.
예를 들어, dest_db
데이터베이스와 dest_schema
스키마에 데이터를 저장하도록 Snowflake Connector for Google Analytics Raw Data 를 구성한 경우, google_analytics_raw_data_reader_role
역할을 생성하고 해당 역할에 데이터 액세스 권한을 부여할 수 있습니다.
다음 예는 이러한 권한을 부여하는 방법을 보여줍니다.
CREATE ROLE google_analytics_raw_data_reader_role; GRANT USAGE ON DATABASE dest_db TO ROLE google_analytics_raw_data_reader_role; GRANT USAGE ON SCHEMA dest_db.dest_schema TO ROLE google_analytics_raw_data_reader_role; GRANT APPLICATION ROLE SNOWFLAKE_CONNECTOR_FOR_GOOGLE_ANALYTICS_RAW_DATA.DATA_READER TO ROLE google_analytics_raw_data_reader_role;
원시 데이터에 액세스하기¶
동기화하는 각 BigQuery 테이블에 대해 Snowflake Connector for Google Analytics Raw Data 는 Snowflake Connector for Google Analytics Raw Data 를 저장하는 데 사용되는 Snowflake 데이터베이스와 스키마에 이름이 같은 새 테이블을 생성합니다.
예를 들어 dest_db
데이터베이스와 dest_schema
스키마에 데이터를 저장하고 역할 my_role
을 통해 데이터에 액세스하도록 커넥터를 구성하고 BigQuery에서 analytics_12345
테이블을 동기화하도록 커넥터를 구성한 경우 이 커넥터는 dest_db.dest_schema.analytics_12345
라는 테이블을 생성합니다.
이 테이블에는 BigQuery에서 수집된 원시 데이터가 포함됩니다. 테이블에 포함되는 열은 다음과 같습니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
|
VARIANT |
원시 형식의 레코드 데이터입니다. |
|
VARIANT |
데이터를 수집한 비동기 프로세스의 ID입니다. |
|
DATE |
커넥터가 테이블에 데이터를 수집한 일일 테이블의 이름입니다. |
|
BOOLEAN |
커넥터가 일일 테이블의 모든 데이터를 수집한 경우 True이고, 일부 데이터가 아직 다운로드 중인 경우 False입니다. |
다음은 dest_db.dest_schema.analytics_12345
테이블의 데이터를 검색하는 SELECT 문의 출력 예입니다.
SELECT * FROM DEST_DB.DEST_SCHEMA.ANALYTICS_12345 LIMIT 5; +---------------------------+--------------------------------------+--------------------+--------------------+ | RAW | RUN_ID | SOURCE_TABLE_DATE | INGESTION_COMPLETE | +---------------------------+--------------------------------------+--------------------+--------------------+ | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | d949ab70-6a7e-47a5-b876-d7e33d701b0d | 2023-06-14 | FALSE | | { "app_info": null, ... } | d949ab70-6a7e-47a5-b876-d7e33d701b0d | 2023-06-14 | FALSE | +---------------------------+--------------------------------------+--------------------+--------------------+
평면화된 데이터에 액세스하기¶
데이터가 포함된 각 테이블의 경우 커넥터는 원시 데이터의 평면화된 뷰를 생성합니다. 뷰의 이름은 접미사가 __view
인 테이블의 이름입니다. 예를 들어 analytics_12345
라는 테이블의 경우 커넥터는 dest_db.dest_schema.analytics_12345__view
뷰를 생성합니다.
참고
ingestion_complete
가 FALSE
인 행에 대한 뷰가 없습니다.
다음은 dest_db.dest_schema.analytics_12345__view
뷰의 데이터를 검색하는 SELECT 문의 출력 예입니다. 이 예에서 analytics_12345
테이블에는 EVENT_DATE
, EVENT_TIMESTAMP
, EVENT_NAME
, EVENT_PREVIOUS_TIMESTAMP
라는 값이 있는 VARIANT
열 raw
가 있습니다.
USE ROLE MY_ROLE; SELECT EVENT_DATE, EVENT_TIMESTAMP, EVENT_NAME, EVENT_PREVIOUS_TIMESTAMP FROM DEST_DB.DEST_SCHEMA.ANALYTICS_12345__VIEW LIMIT 5; +------------+--------------------------+-------------------+--------------------------+ | EVENT_DATE | EVENT_TIMESTAMP | EVENT_NAME | EVENT_PREVIOUS_TIMESTAMP | +------------+--------------------------+-------------------+--------------------------+ | 2023-06-13 | 2023-06-13 18:27:20.775 | "page_view" | null | | 2023-06-13 | 2023-06-13 18:27:25.960 | "user_engagement" | null | | 2023-06-13 | 2023-06-13 19:26:49.130 | "scroll" | null | | 2023-06-13 | 2023-06-13 18:27:51.135 | "page_view" | null | | 2023-06-13 | 2023-06-13 18:27:56.343 | "user_engagement" | null | +------------+--------------------------+-------------------+--------------------------+