Openflow Connector for Google Sheets 설정¶
참고
커넥터에는 커넥터 약관 이 적용됩니다.
이 항목에서는 Openflow Connector for Google Sheets 를 설정하는 단계에 대해 설명합니다.
전제 조건¶
Openflow Connector for Google Sheets 정보 을 검토했는지 확인합니다.
Openflow를 설정 했는지 확인합니다.
자격 증명 받기¶
Google Cloud 관리자는 다음 작업을 수행합니다.
다음 사항이 준비되어 있는지 확인하십시오.
슈퍼 관리자 권한 이 있는 Google 사용자
다음 역할이 있는 Google Cloud Project:
서비스 계정 키 생성을 사용 설정합니다. Google은 기본적으로 서비스 계정 키 생성을 비활성화합니다. 서비스 계정 JSON 을 사용하려면 이 키 생성 정책을 해제해야 합니다. 서비스 계정 키 생성을 사용하려면 다음 작업을 수행합니다.
조직 정책 관리자 역할이 있는 슈퍼 관리자 계정으로 Google Cloud Console 에 로그인합니다.
조직 내 프로젝트가 아닌 조직과 연결된 프로젝트에 있는지 확인하십시오.
Organization Policies 를 선택합니다.
Disable service account key creation 정책을 선택합니다.
Manage Policy 를 선택하고 적용을 해제합니다.
Set Policy 를 선택합니다.
서비스 계정 이메일 주소로 Google Sheets 스프레드시트를 공유합니다. 이메일 주소는 서비스 계정 JSON 파일의
client_email
필드 아래에서 찾을 수 있습니다. 공유 권한을뷰어
로 설정합니다.
Snowflake 계정 설정하기¶
Snowflake 계정 관리자는 다음 작업을 수행합니다.
새 역할을 생성하거나 기존 역할을 사용하여 데이터베이스 권한 권한을 부여합니다.
유형이 SERVICE 인 새 Snowflake 서비스 사용자를 생성합니다.
Snowflake 서비스 사용자에게 이전 단계에서 생성한 역할을 부여합니다.
2단계의 Snowflake SERVICE 사용자에 대해 키 페어 인증 으로 구성합니다.
Snowflake는 이 단계를 강력히 권장합니다. Openflow에서 지원하는 시크릿 관리자(예: AWS, Azure, Hashicorp)를 구성하고 공개 및 개인 키를 시크릿 스토어에 저장합니다.
참고
어떤 이유로든 시크릿 관리자를 사용하지 않으려면 조직의 보안 정책에 따라 키 페어 인증에 사용되는 공개 키와 개인 키 파일을 보호할 책임이 있습니다.
시크릿 관리자가 구성되면 인증 방법을 결정합니다. AWS 에서는 다른 시크릿을 유지할 필요가 없으므로 Openflow와 연결된 EC2 인스턴스 역할을 사용하는 것이 좋습니다.
Openflow에서 오른쪽 상단의 햄버거 메뉴에서 이 시크릿 관리자와 연결된 매개 변수 공급자를 구성합니다. Controller Settings » Parameter Provider 로 이동한 다음 매개 변수 값을 가져옵니다.
이 시점에서 모든 자격 증명은 연결된 매개 변수 경로로 참조할 수 있으며 민감한 값은 Openflow 내에서 유지될 필요가 없습니다.
다른 Snowflake 사용자가 커넥터에서 수집한 원시 수집 문서 및 테이블에 대한 액세스가 필요한 경우(예: Snowflake에서 사용자 정의 처리를 위해), 해당 사용자에게 1단계에서 생성한 역할을 부여하십시오.
커넥터가 사용할 웨어하우스를 지정합니다. 가장 작은 데이터 웨어하우스 크기로 시작한 다음 복제되는 테이블 수와 전송되는 데이터의 양에 따라 크기를 실험해 보십시오. 테이블 수가 많은 경우 일반적으로 더 큰 규모의 웨어하우스보다는 멀티 클러스터 웨어하우스 에서 확장이 더 쉽습니다.
커넥터 설정하기¶
데이터 엔지니어는 다음 작업을 수행하여 커넥터를 설치하고 구성합니다.
커넥터 설치하기¶
Openflow 개요 페이지로 이동합니다. Featured connectors 섹션에서 View more connectors 을 선택합니다.
Openflow Connector 페이지에서 커넥터를 찾아 Add to runtime 을 선택합니다.
Select runtime 대화 상자의 Available runtimes 드롭다운 목록에서 런타임을 선택합니다.
Add 를 선택합니다.
참고
커넥터를 설치하기 전에 커넥터가 수집한 데이터를 저장할 수 있도록 Snowflake에서 데이터베이스와 스키마를 생성했는지 확인하십시오.
Snowflake 계정 자격 증명으로 배포를 인증하고 런타임 애플리케이션이 Snowflake 계정에 액세스할 수 있도록 허용할지 묻는 메시지가 표시되면 Allow 를 선택합니다. 커넥터 설치 프로세스를 완료하는 데 몇 분 정도 걸립니다.
Snowflake 계정 자격 증명으로 런타임에 인증합니다.
커넥터 프로세스 그룹이 추가된 Openflow 캔버스가 표시됩니다.
커넥터 구성¶
가져온 프로세스 그룹을 마우스 오른쪽 버튼으로 클릭하고 Parameters 를 선택합니다.
플로우 매개 변수 에 설명된 대로 필수 매개 변수 값을 채웁니다.
플로우 매개 변수¶
커넥터 정의의 구성은 3가지 매개 변수 컨텍스트로 나뉩니다.
Google Sheets Source Parameters: Google Sheets와의 연결을 설정하는 데 사용됩니다.
Google Sheets Destination Parameters: Snowflake와의 연결을 설정하는 데 사용됩니다.
Google Sheets Ingestion Parameters: Google Sheets에서 다운로드한 데이터의 구성을 정의하는 데 사용됩니다.
참고
Google Sheets Ingestion Parameters 매개 변수 컨텍스트에는 스프레드시트별 세부 정보가 포함되어 있으므로 각각의 새 스프레드시트 및 프로세스 그룹에 대해 새 매개 변수 컨텍스트를 생성해야 합니다.
새 매개 변수 컨텍스트를 생성하려면 Openflow 캔버스 메뉴로 이동하여 Parameter Contexts 를 선택한 다음 새 매개 변수 컨텍스트를 추가합니다. Google Sheets Destination Parameters 및 Google Sheets Source Parameters 매개 변수 컨텍스트 모두에서 매개 변수를 상속합니다.
다음 테이블에서는 매개 변수 컨텍스트에 따라 구성할 수 있는 플로우 매개 변수에 대해 설명합니다.
Google Sheets Destination Parameters¶
매개 변수 |
설명 |
---|---|
대상 데이터베이스 |
데이터가 유지될 데이터베이스입니다. Snowflake에 이미 존재해야 합니다 |
대상 스키마 |
데이터가 유지될 스키마입니다. Snowflake에 이미 존재해야 합니다 |
Snowflake 계정 식별자 |
Snowflake 계정 이름은 [organization-name]-[account-name] 형식으로 형식이 지정되며, 데이터는 여기에 영구적으로 저장됩니다. |
Snowflake Authentication Strategy |
Snowflake에 대한 인증 전략. 가능한 값: SNOWFLAKE_SESSION_TOKEN - SPCS 에서 플로우를 실행하는 경우, 개인 키를 사용하여 액세스를 설정하려는 경우 KEY_PAIR |
Snowflake 개인 키 |
인증에서 사용되는 RSA 개인 키입니다. RSA 키는 PKCS8 표준에 따라 형식이 지정되어야 하며 표준 PEM 헤더와 푸터가 있어야 합니다. Snowflake 개인 키 파일 또는 Snowflake 개인 키 중 하나를 정의해야 합니다 |
Snowflake 개인 키 파일 |
PKCS8 표준에 따라 형식이 지정되고 표준 PEM 헤더와 푸터가 있는 Snowflake 인증에 사용되는 RSA 개인 키가 포함된 파일입니다. 헤더 라인은 |
Snowflake 개인 키 비밀번호 |
Snowflake 개인 키 파일과 연결된 비밀번호입니다 |
Snowflake 역할 |
쿼리 실행 중에 사용되는 Snowflake 역할 |
Snowflake 사용자 이름 |
Snowflake 인스턴스에 연결하는 데 사용되는 사용자 이름입니다 |
Snowflake 웨어하우스 |
쿼리 실행에 사용되는 Snowflake 웨어하우스 |
Google Sheets Source Parameters¶
매개 변수 |
설명 |
---|---|
서비스 계정 JSON |
client_id, client_email, private_key 등 서비스 계정 자격 증명이 포함된 파일의 내용입니다. 파일의 전체 내용을 복사합니다. |
Google Sheets Ingestion Parameters¶
다음 테이블에는 다른 매개 변수 컨텍스트에서 상속되지 않는 매개 변수만 나열되어 있습니다.
매개 변수 |
설명 |
---|---|
날짜 시간 렌더링 옵션 |
출력에서 날짜를 렌더링하는 방법을 결정합니다. |
대상 데이터베이스 |
대상 데이터베이스 - 대상 테이블이 생성되는 대상 데이터베이스입니다. |
대상 스키마 |
대상 테이블이 생성되는 대상 스키마입니다. |
대상 테이블 접두사 |
대상 테이블 접두사는 Google Sheets에서 가져온 보고서 데이터가 저장되는 위치입니다. 커넥터는 각 범위에 대해 1개의 대상 테이블을 생성합니다. 범위를 제공하지 않으면 시트 이름이 테이블 식별자로 사용됩니다. 시트의 첫 번째 행은 대상 테이블의 열 이름을 나타냅니다. |
범위 |
스프레드시트에서 검색할 범위 목록입니다. 범위를 지정하지 않으면 지정된 스프레드시트에 있는 모든 시트가 다운로드됩니다. 각 범위를 쉼표로 구분하여 A1 또는 R1C1 표기법 으로 입력합니다. 예를 들어 |
실행 예약 |
Google Sheets에서 데이터를 검색하여 Snowflake에 저장하는 예약을 실행합니다. 기본적으로 타이머 기반 예약 전략이 사용되며 여기서 사용자는 간격(예: |
스프레드시트 ID |
스프레드시트에 대한 고유 식별자. 이는 스프레드시트의 URL 에서 찾을 수 있습니다. |
값 렌더링 옵션 |
출력에서 값을 렌더링하는 방법을 결정합니다. |
참고
대상 테이블 식별자는 대상 테이블 접두사와 범위 이름의 조합이며 고유해야 합니다. 여러 스프레드시트 또는 단일 시트에서 데이터를 다운로드하고 범위 이름이 고유하지 않은 경우 각 플로우에 대해 고유한 대상 테이블 접두사를 지정해야 합니다. 대상 테이블 이름이 고유하지 않은 경우 커넥터가 실패하여 기존 대상 테이블을 덮어쓸 수 있습니다.
플로우 실행¶
평면을 마우스 오른쪽 버튼으로 클릭하고 Enable all Controller Services 를 선택합니다.
가져온 프로세스 그룹을 마우스 오른쪽 버튼으로 클릭하고 Start 를 선택합니다. 커넥터가 데이터 수집을 시작합니다.
참고
가져온 .xlsx
는 Google Sheets 형식이어야 합니다. 파일을 가져오는 경우, 플로우를 실행하기 전에 파일이 Google Sheets 형식으로 변환되었는지 확인하십시오. Google Sheets 이외의 형식의 스프레드시트는 읽을 수 없습니다. 자세한 내용은 파일을 Google Sheets 형식으로 변환 섹션을 참조하십시오.