Amazon Ads용 Openflow 커넥터 설정
Amazon Ads용 Openflow 커넥터 설정
Snowflake 커넥터는 Snowflake Openflow를 사용할 수 있는 모든 리전에서 지원돼요.
Openflow Snowflake 배포는 AWS, Azure, GCP 상용 리전의 모든 계정에서 사용할 수 있어요.
BYOC 배포의 Snowflake Openflow는 AWS 상용 리전(상용 리전)의 모든 계정에서만 사용할 수 있어요.
참고
이 커넥터는 Snowflake 커넥터 약관의 적용을 받아요.
이 항목에서는 Amazon Ads용 Openflow 커넥터를 설정하는 단계를 설명해요.
사전 요구 사항
- Amazon Ads용 Openflow 커넥터 소개를 검토했는지 확인하세요.
- Openflow - Snowflake 배포 설정 또는 Openflow - BYOC 설정을 완료했는지 확인하세요.
- Openflow - Snowflake 배포를 사용하는 경우 필수 도메인 구성을 검토했고, Amazon Ads 커넥터의 필수 도메인에 접근 권한을 부여했는지 확인하세요.
자격 증명 가져오기
Amazon Ads 관리자로서 다음 작업을 수행하세요.
- Amazon Ads 계정에 접근할 수 있는지 확인하세요.
- Amazon Ads API 접근 권한 획득하고 온보딩 프로세스를 완료하세요.
- 클라이언트 ID와 클라이언트 시크릿 가져오기.
- 인증 부여(authorization grant) 생성하고 새로 고침 토큰(refresh token) 검색하세요.
- 사용 가능한 리전을 검토하고 광고하는 리전에 따라 요청에 사용할 기본 URL을 가져오세요.
- 보고서 구성을 위해 프로필 ID 가져오기.
Snowflake 계정 설정
Openflow 관리자로서 다음 작업을 수행해 Snowflake 계정을 설정하세요. 기본 SNOWFLAKE_MANAGED 인증 전략에서는 런타임의 execute-as 역할이 커넥터가 Snowflake에 접근할 때 사용하는 ID이므로, 다음 권한을 부여하세요.
참고
Openflow - BYOC 배포에 커넥터를 배포하고, 권장되는
SNOWFLAKE_MANAGED대신KEY_PAIR인증 전략을 사용한다면, 런타임의 관리 토큰에 의존하는 대신 동일한 execute-as 역할을 서비스 사용자에게도 부여해야 해요. 서비스 사용자를 만들려면 Openflow - BYOC 배포의 키 페어 인증 설정을 참조하세요.
데이터베이스, 스키마, 웨어하우스 만들기
- 대상 데이터베이스를 만들어요.
USE ROLE OPENFLOW_ADMIN;
CREATE DATABASE IF NOT EXISTS <destination_database>;
- 대상 스키마를 만들어요.
CREATE SCHEMA IF NOT EXISTS <destination_database>.<destination_schema>;
- 런타임의 execute-as 역할에 필요한 권한을 부여해요.
GRANT USAGE ON DATABASE <destination_database> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
GRANT USAGE ON SCHEMA <destination_database>.<destination_schema> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
GRANT CREATE TABLE ON SCHEMA <destination_database>.<destination_schema> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
- 웨어하우스(또는 기존 웨어하우스)를 만들고 사용 권한을 부여해요.
CREATE WAREHOUSE IF NOT EXISTS <openflow_warehouse>
WITH
WAREHOUSE_SIZE = 'XSMALL'
AUTO_SUSPEND = 300
AUTO_RESUME = TRUE;
GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
- 커넥터가 수집한 테이블에 다른 Snowflake 사용자가 접근해야 한다면(예: Snowflake에서 맞춤 처리용), 해당 사용자에게 execute-as 역할을 부여하세요.
커넥터 설정
데이터 엔지니어로서 다음 작업을 수행해 커넥터를 설치·구성하세요.
커넥터 설치
데이터 엔지니어로서 커넥터를 설치하려면 다음을 수행하세요.
- Openflow의 커넥터 라이브러리(Connector library) 탭으로 이동해요.
- Openflow 커넥터 페이지에서 커넥터를 찾아 설치(Install) 를 선택해요.
- 런타임 선택(Select runtime) 대화상자에서 사용 가능한 런타임(Available runtimes) 드롭다운 목록에서 런타임을 선택하고 설치를 클릭해요.
참고
커넥터를 설치하기 전에 커넥터가 수집한 데이터를 저장할 데이터베이스와 스키마를 Snowflake에 만들어 두었는지 확인하세요.
- Snowflake 계정 자격 증명으로 배포에 인증하고, 런타임 애플리케이션이 Snowflake 계정에 접근하도록 허용하라는 메시지가 표시되면 허용(Allow) 을 선택해요. 커넥터 설치 프로세스는 완료하는 데 몇 분 걸려요.
- Snowflake 계정 자격 증명으로 런타임에 인증해요.
커넥터 프로세스 그룹이 추가된 Openflow 캔버스가 나타나요.
커넥터 구성
- 가져온 프로세스 그룹을 오른쪽 클릭하고 매개변수(Parameters) 를 선택해요.
- 플로우 매개변수에 설명된 대로 필수 매개변수 값을 입력해요.
플로우 매개변수
이 절에서는 다음 매개변수 컨텍스트에 따라 구성할 수 있는 플로우 매개변수를 설명해요.
- Amazon Ads 소스 매개변수: Amazon Ads API와 연결을 설정하는 데 사용해요.
- Amazon Ads 대상 매개변수: Snowflake와 연결을 설정하는 데 사용해요.
- Amazon Ads 수집 매개변수: Amazon Ads에서 다운로드한 데이터의 구성을 정의하는 데 사용해요.
Amazon Ads 소스 매개변수
OAuth Base URL에 대한 가능한 값:
- https://api.amazon.com/auth/o2/token
- https://api.amazon.co.uk/auth/o2/token
- https://api.amazon.co.jp/auth/o2/token
| 매개변수 | 설명 |
|---|---|
| Client ID | Amazon Advertising 계정의 클라이언트 ID |
| Client Secret | Amazon Advertising 계정의 클라이언트 시크릿 |
| OAuth Base URL | 액세스 토큰을 발급하는 인증 서버의 URL. 가능한 값: https://api.amazon.com/auth/o2/token, https://api.amazon.co.uk/auth/o2/token, https://api.amazon.co.jp/auth/o2/token |
| Refresh Token | Amazon Ads API용 새로 고침 토큰 |
| Region | 광고 데이터가 다운로드되는 환경. 가능한 값: NA, EU, FE |
Amazon Ads 대상 매개변수
참고
execute-as 역할을 사용할 때
SNOWFLAKE_MANAGED인증에 대한 자세한 내용은 Openflow 소개를 참조하세요.
| 매개변수 | 설명 | 필수 |
|---|---|---|
| Destination Database | 데이터가 저장될 데이터베이스. Snowflake에 이미 존재해야 해요. 이름은 대소문자를 구분해요. 따옴표 없는 식별자는 대문자로 제공하세요. | 예 |
| Destination Schema | 데이터가 저장될 스키마. Snowflake에 이미 존재해야 해요. 이름은 대소문자를 구분해요. 따옴표 없는 식별자는 대문자로 제공하세요. 예: CREATE SCHEMA SCHEMA_NAME 또는 CREATE SCHEMA schema_name → SCHEMA_NAME 사용. CREATE SCHEMA "schema_name" 또는 CREATE SCHEMA "SCHEMA_NAME" → 각각 schema_name 또는 SCHEMA_NAME 사용 | 예 |
| Snowflake Authentication Strategy | 사용 시: Snowflake Openflow 배포 또는 BYOC: SNOWFLAKE_MANAGED를 사용해요. 이 토큰은 Snowflake가 자동으로 관리해요. BYOC 배포는 SNOWFLAKE_MANAGED를 사용하기 위해 이전에 execute-as 역할을 구성해야 해요. BYOC: 대안으로 BYOC는 인증 전략 값으로 KEY_PAIR를 사용할 수 있어요. | 예 |
| Snowflake Account Identifier | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 비워 두어야 해요. KEY_PAIR: [조직 이름]-[계정 이름] 형식의 Snowflake 계정 이름. | 예 |
| Snowflake Private Key | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 비워 두어야 해요. KEY_PAIR: PKCS8 표준에 따라 형식화되고 표준 PEM 헤더·푸터를 포함하는 인증용 RSA 프라이빗 키. Snowflake Private Key File 또는 Snowflake Private Key 중 하나를 정의해야 해요. | 아니요 |
| Snowflake Private Key File | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 프라이빗 키 파일은 비워 두어야 해요. KEY_PAIR: PKCS8 표준에 따라 형식화되고 표준 PEM 헤더·푸터를 포함하는, Snowflake에 인증하는 데 사용되는 RSA 프라이빗 키가 들어 있는 파일을 업로드해요. 헤더 줄은 -----BEGIN PRIVATE로 시작해요. 프라이빗 키 파일을 업로드하려면 Reference asset 확인란을 선택하세요. | 아니요 |
| Snowflake Private Key Password | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 비워 두어야 해요. KEY_PAIR: Snowflake 프라이빗 키 파일과 연결된 비밀번호를 제공해요. | 아니요 |
| Snowflake Role | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 런타임의 execute-as 역할(또는 그에 부여된 하위 역할)을 사용해요. execute-as 역할은 Openflow UI의 런타임에 대한 View Details로 이동해 찾을 수 있어요. KEY_PAIR: 서비스 사용자에 대해 구성된 유효한 역할을 사용해요. | 예 |
| Snowflake Username | 사용 시: SNOWFLAKE_MANAGED 인증 전략: 비워 두어야 해요. KEY_PAIR: Snowflake 인스턴스에 연결하는 데 사용되는 사용자 이름을 제공해요. | 예 |
| Snowflake Warehouse | 쿼리를 실행하는 데 사용되는 Snowflake 웨어하우스. | 예 |
Amazon Ads 수집 매개변수
참고
열, 필터, 그룹 바이 목록은 보고 유형에 따라 다르며 Amazon Ads API 문서에서 확인할 수 있어요. 예를 들어 spCampaigns 보고 유형의 사용 가능한 열 목록은 Sponsored Products 문서에서 찾을 수 있어요.
| 매개변수 | 설명 |
|---|---|
| Report Name | 대상 테이블 이름으로 사용될 보고서 이름. 대상 스키마 내에서 고유해야 해요. |
| Report Ad Product | 보고되는 광고 제품 유형. 가능한 값: SPONSORED_PRODUCTS, SPONSORED_BRANDS, SPONSORED_DISPLAY, SPONSORED_TELEVISION, DEMAND_SIDE_PLATFORM |
| Report Columns | 최종 보고서에 표시될 열 집합. 사용 가능한 열 목록은 보고 유형에 따라 다르며 문서에서 찾을 수 있어요. |
| Report Filters | 반환되는 데이터를 다듬는 데 사용되는 필터 집합. 사용 가능한 필터 목록은 보고 유형에 따라 다르며 문서에서 찾을 수 있어요. 필터는 columnName=filterValue 형식이어야 하고 값은 쉼표(,)로 구분해야 해요. 예: campaignStatus=ENABLED,PAUSED. |
| Report Group By | 데이터의 세분화 수준과 보고서 내 데이터가 집계·표시되는 방식을 결정해요. 사용 가능한 그룹 바이 열 목록은 보고 유형에 따라 다르며 문서에서 찾을 수 있어요. |
| Report Ingestion Strategy | 스냅샷 또는 증분 중 데이터를 가져오는 모드. 가능한 값: SNAPSHOT, INCREMENTAL |
| Report Ingestion Window | 증분 수집 중 다운로드할 데이터의 일 수를 지정해요. 예를 들어 30일 보고 수집 창에서 증분 로드는 마지막 성공 수집 날짜로부터 30일 전부터 수집을 시작하며, 이 계산 날짜가 전체 시작 날짜보다 앞서면 전체 시작 날짜부터 수집을 시작해요. SNAPSHOT 수집 전략을 사용하면 시작 날짜부터 현재까지의 모든 데이터가 다운로드되므로 보고 수집 창을 사용할 필요가 없어요. |
| Report Profile ID | 특정 마켓플레이스의 광고 계정과 연결된 프로필 ID. |
| Report Time Unit | 날짜 집계. 가능한 값: DAILY(각 날짜를 한 행으로 표현), SUMMARY(전체 수집 기간을 한 행으로 표현) |
| Report Type | Amazon Ads API는 여러 보고 유형을 지원해요. 예: sbAds와 spCampaigns. 문서에서 reportTypeId 값을 복사해 매개변수 값에 붙여넣으세요. |
| Report Start Date | 수집이 시작되어야 하는 시작 날짜. 날짜 형식은 YYYY-MM-DD예요. |
| Report Schedule | 보고서를 만드는 프로세서의 일정 시간. 예: 8 h 또는 1 d. h는 시간, d는 일을 의미해요. |
참고
Amazon Ads API의 데이터 보존 기간은 보고 유형에 따라 60일에서 365일까지의 특정 기간이며, 그 동안 과거 광고 성과 데이터가 저장되고 검색 가능해요. 이 기간이 지나면 이전 데이터는 더 이상 사용할 수 없을 수 있어요.
플로우 실행
- 캔버스를 오른쪽 클릭하고 모든 컨트롤러 서비스 활성화(Enable all Controller Services) 를 선택해요.
- 가져온 프로세스 그룹을 오른쪽 클릭하고 시작(Start) 을 선택해요.
커넥터가 데이터 수집을 시작해요.