개요
이 페이지에서는 Looker에서 Google BigQuery 표준 SQL 또는 Google BigQuery Legacy SQL로의 연결을 설정하는 방법을 설명합니다.
Google BigQuery 표준 SQL 또는 Google BigQuery Legacy SQL 연결을 설정하는 일반적인 단계는 다음과 같습니다.
BigQuery 데이터베이스에서 Looker가 BigQuery 데이터베이스에 액세스하는 데 사용할 인증을 구성합니다. Looker는 다음과 같은 BigQuery 인증 옵션을 지원합니다.
- 서비스 계정: 자세한 내용은 이 페이지의 BigQuery 서비스 계정으로 인증 섹션을 참조하세요.
- OAuth: 자세한 내용은 이 페이지의 OAuth로 인증 섹션을 참조하세요.
연결에서 영구 파생 테이블(PDT)을 사용하려면 BigQuery 데이터베이스에서 Looker가 데이터베이스에 PDT를 만드는 데 사용할 수 있는 임시 데이터 세트를 만드세요. 절차는 이 페이지의 영구 파생 테이블의 임시 데이터 세트 만들기 섹션을 참조하세요.
Looker에서 BigQuery 데이터베이스에 대한 Looker 연결을 설정합니다. 절차는 이 페이지의 BigQuery에 Looker 연결 섹션을 참조하세요.
Looker에서 Looker와 BigQuery 데이터베이스 간의 연결을 테스트합니다. 절차는 이 페이지의 연결 테스트 섹션을 참조하세요.
네트워크 트래픽 암호화
Looker 애플리케이션과 데이터베이스 사이에 네트워크 트래픽을 암호화하는 것이 가장 좋습니다. 안전한 데이터베이스 액세스 사용 설정 문서 페이지에 설명된 옵션 중 하나를 고려해 보세요.
BigQuery 서비스 계정으로 인증
Looker에서 BigQuery 데이터베이스에 인증할 수 있는 한 가지 방법은 BigQuery 서비스 계정을 사용하는 것입니다. Google Cloud 콘솔의 API Manager를 사용하여 BigQuery 데이터베이스에 서비스 계정을 만듭니다. 서비스 계정을 만들려면 Google Cloud 관리자 권한이 있어야 합니다. 서비스 계정 만들기 및 비공개 키 생성에 대한 문서를 참조하세요.
서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드
BigQuery 서비스 계정을 만드는 방법은 다음과 같습니다.
Google Cloud 콘솔의 API Manager에서 사용자 인증 정보 페이지를 열고 프로젝트를 선택합니다.
사용자 인증 정보 만들기를 선택하고 서비스 계정을 선택합니다.
새 서비스 계정의 이름을 입력하고 원하는 경우 설명을 추가한 후 만들고 계속하기를 선택합니다.
서비스 계정에는 Google BigQuery 사전 정의된 역할 2개가 필요합니다.
- BigQuery > BigQuery 데이터 편집자
- BigQuery > BigQuery 작업 사용자
역할 선택 필드에서 첫 번째 역할을 선택하고 다른 역할 추가를 선택한 후 두 번째 역할을 선택합니다.
두 역할을 모두 선택한 후 계속을 선택하고 완료를 선택합니다.
사용자 인증 정보 페이지에서 새 서비스 계정을 선택합니다.
키를 선택하고 키 추가를 선택한 후 드롭다운에서 새 키 만들기를 선택합니다.
키 유형에서 JSON을 선택한 후 만들기를 선택합니다.
JSON 키가 컴퓨터에 저장됩니다.
다운로드 위치를 확인한 후 닫기를 선택합니다.
완료를 선택합니다.
서비스 계정에 해당하는 이메일 주소를 찾습니다. BigQuery에 대한 Looker 연결을 구성하려면 이 주소가 필요합니다.
BigQuery 데이터베이스에 서비스 계정을 만들면, BigQuery에 Looker 연결을 설정할 때 Looker 연결 창에서 서비스 계정 이메일, 서비스 계정 JSON/P12 파일, 비밀번호 입력란에 이 서비스 계정 정보 및 인증서 파일 세부정보를 입력하게 됩니다.
OAuth로 인증
Looker는 Google BigQuery 연결에 OAuth를 지원합니다. 즉, 각 Looker 사용자가 자체 Google OAuth 사용자 인증 정보를 사용하여 Google에 인증하고 Looker가 데이터베이스에 액세스하도록 승인합니다.
OAuth를 사용하면 데이터베이스 관리자가 다음 기능을 수행할 수 있습니다.
- 데이터베이스에 대해 쿼리를 실행하는 Looker 사용자를 감사
- Google 권한을 사용하여 역할 기반 액세스 제어 시행
- Google BigQuery에 액세스하는 모든 프로세스와 작업에 OAuth 토큰 사용(BigQuery ID와 비밀번호를 여러 위치에 임베딩하지 않아도 됨)
OAuth로 BigQuery를 연결할 경우 다음에 유의하세요.
- 데이터베이스 관리자가 BigQuery OAuth 클라이언트 사용자 인증 정보를 변경하면 사용자가 소유한 모든 일정이나 알림이 영향을 받습니다. 관리자가 BigQuery OAuth 사용자 인증 정보를 변경하면 사용자는 다시 로그인해야 합니다. 또한 사용자는 사용자 프로필 계정 페이지에서 Looker 계정 페이지로 이동하여 Google에 로그인할 수 있습니다.
- OAuth를 사용하는 BigQuery 연결은 '사용자별'이므로 캐싱 정책은 쿼리뿐만 아니라 사용자별로 적용됩니다. 즉, Looker는 캐싱 기간 내에 동일한 쿼리가 실행될 때마다 캐시된 결과를 사용하는 대신 동일한 사용자가 캐싱 기간 내에 동일한 쿼리를 실행한 경우에만 캐시된 결과를 사용합니다. 캐싱에 대한 자세한 내용은 쿼리 캐싱 문서 페이지를 참조하세요.
- OAuth를 사용한 BigQuery 연결에서 영구 파생 테이블(PDT)을 사용하려면 PDT 프로세스를 위해 데이터베이스에 액세스할 수 있도록 Looker에 대한 추가 서비스 계정을 만들어야 합니다. 자세한 내용은 이 페이지의 BigQuery 연결의 영구 파생 테이블 섹션을 참조하세요.
- 관리자가 다른 사용자로 가장하면 해당 사용자의 OAuth 승인 토큰을 사용합니다.
sudo
명령어 사용 방법은 사용자 문서 페이지를 참조하세요.
OAuth용 BigQuery 데이터베이스 프로젝트 구성
다음 섹션에서는 OAuth 사용자 인증 정보를 생성하는 방법과 OAuth 동의 화면을 구성하는 방법을 설명합니다.
다음과 같은 경우에는 이 절차를 수행할 필요가 없습니다.
- 프로젝트의 다른 애플리케이션에 대해 OAuth 동의 화면을 이미 구성한 경우 다른 애플리케이션을 만들 필요가 없으며 프로젝트의 모든 애플리케이션에 대해 하나의 동의 화면만 구성하면 됩니다. 이 경우 데이터베이스에 대한 Looker(Google Cloud 핵심 서비스) 연결 구성 절차로 바로 이동할 수 있습니다.
- Looker(Google Cloud 핵심 서비스) 인스턴스를 사용하는 경우 Looker는 Looker 관리자가 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들 때 사용한 OAuth 애플리케이션 사용자 인증 정보를 자동으로 사용할 수 있습니다. Looker(Google Cloud 핵심 서비스) 인스턴스와 동일한 OAuth 애플리케이션 사용자 인증 정보를 사용하는 경우 이 섹션의 절차를 건너뛰고 데이터베이스에 대한 Looker(Google Cloud 핵심 서비스) 연결 구성 절차로 바로 이동할 수 있습니다.
OAuth 사용자 인증 정보 및 OAuth 동의 화면을 Google Cloud 콘솔에 구성해야 합니다. Google 일반 설명은 Google Cloud 지원 사이트 및 Google Dev 콘솔 사이트에 있습니다.
Looker에서 BigQuery 데이터에 액세스하는 사용자 유형과 BigQuery 데이터가 공개 또는 비공개인지 여부에 따라 OAuth가 가장 적합한 인증 방법이 아닐 수 있습니다. 마찬가지로 사용자가 Looker를 사용하기 위해 Google에 인증할 때 사용자가 요청한 데이터 유형과 사용자 데이터에 필요한 액세스 수준을 결정하려면 Google의 확인이 필요할 수 있습니다. 확인에 대한 자세한 내용은 이 페이지의 Google OAuth 사용자 인증 정보 생성 섹션을 참조하세요.
Google OAuth 사용자 인증 정보 생성
Google Cloud 콘솔로 이동합니다.
프로젝트 선택 드롭다운에서 BigQuery 프로젝트로 이동합니다. 프로젝트 대시보드로 이동합니다.
왼쪽 메뉴에서 API 및 서비스 페이지를 선택합니다. 그런 다음 사용자 인증 정보를 선택합니다. 사용자 인증 정보 페이지에서 사용자 인증 정보 만들기 버튼의 아래쪽 화살표를 선택하고 드롭다운 메뉴에서 OAuth 클라이언트 ID를 선택합니다.
OAuth 사용자 인증 정보를 생성하려면 먼저 사용자가 비공개 데이터에 대한 액세스 권한을 부여하는 방법을 선택할 수 있는 OAuth 동의 화면을 구성해야 합니다. OAuth 동의 화면을 구성하려면 이 페이지의 OAuth 동의 화면 구성 섹션을 참조하세요.
OAuth 동의 화면을 이미 구성한 경우 Google은 Looker에 대한 BigQuery 연결에 사용할 OAuth 클라이언트 ID 및 보안 비밀을 만들 수 있게 해주는 OAuth 클라이언트 ID 만들기 페이지를 표시합니다. 애플리케이션 유형 드롭다운에서 웹 애플리케이션을 선택하세요. 페이지가 펼쳐지고 추가 옵션이 표시됩니다.
이름 필드에 Looker와 같은 앱 이름을 입력합니다.
승인된 자바스크립트 원본 섹션에서 + URI 추가를 선택하여 URI 1 필드를 표시합니다. URI 1 필드에
https://
를 포함한 Looker 인스턴스의 URL을 입력합니다. 예를 들면 다음과 같습니다.- Looker에서 인스턴스를 호스팅하는 경우:
https://<instancename>.looker.com
- 고객 호스팅 Looker 인스턴스가 있는 경우:
https://looker.<mycompany>.com
- Looker 인스턴스에 포트 번호가 필요한 경우:
https://looker.<mycompany>.com:9999
- Looker에서 인스턴스를 호스팅하는 경우:
승인된 리디렉션 URI 섹션에서 + URI 추가를 선택하여 URI 1 필드를 표시합니다. URI 1 필드에 Looker 인스턴스의 URL을 입력하고
/external_oauth/redirect
를 입력합니다. 예를 들면https://<instancename>.looker.com/external_oauth/redirect
또는https://looker.<mycompany>.com:9999/external_oauth/redirect
입니다.클라이언트 ID와 클라이언트 보안 비밀번호 값을 복사하세요. Looker에서 BigQuery 연결에 사용되는 OAuth를 구성하는 데 필요합니다.
OAuth 동의 화면 구성
Google에서는 관리자가 OAuth 동의 화면을 설정하도록 요구하고 있으며, 이를 통해 사용자는 자신의 비공개 데이터에 대한 액세스 권한을 부여하는 방법을 선택할 수 있으며 조직의 서비스 약관 및 개인정보처리방침 링크를 제공할 수 있습니다.
왼쪽 메뉴에서 OAuth 동의 화면 페이지를 선택합니다. OAuth 동의 화면을 구성하려면 먼저 이 앱을 제공할 사용자 유형을 선택해야 합니다. 선택한 항목에 따라 앱에 Google 인증이 필요할 수 있습니다.
선택한 후 만들기를 선택합니다. Google에 OAuth 동의 화면 페이지가 표시됩니다. 내부 및 공개 애플리케이션을 포함한 프로젝트의 모든 애플리케이션에 대해 이 화면을 구성할 수 있습니다.
Google은 다음 중 하나라도 해당하면 공개 애플리케이션을 확인합니다.
- 애플리케이션에서 제한되거나 민감한 범위를 사용하는 Google API를 사용함
- OAuth 동의 화면에 애플리케이션 로고가 포함됨
- 프로젝트가 도메인 기준을 초과함
OAuth 동의 화면을 구성하려면 다음의 단계를 따르세요.
앱 이름 필드에 사용자가 액세스 권한을 부여받는 애플리케이션의 이름(이 경우 Looker)을 입력합니다.
사용자 지원 이메일 필드에 사용자가 로그인 또는 동의 문제와 관련하여 문의해야 하는 지원 이메일을 입력합니다.
도메인 추가를 선택하여 승인된 도메인 1 입력란을 펼칩니다. 이 입력란에 Looker 인스턴스의 URL 도메인을 입력합니다. 예를 들어 Looker가
https://<instance_name>.cloud.looker.com
에서 인스턴스를 호스팅하면 도메인은cloud.looker.com
입니다. 고객 호스팅 Looker 배포의 경우 Looker를 호스팅할 도메인을 입력합니다.개발자 연락처 정보 섹션에서 Google이 내 프로젝트에 관해 질의할 수 있는 이메일 주소를 하나 이상 입력합니다.
나머지 입력란은 선택사항이지만 이를 사용하여 동의 화면을 추가로 맞춤설정할 수 있습니다.
저장하고 계속하기를 선택합니다.
범위 페이지가 표시되며 여기에서 범위를 구성할 수 있습니다. Looker에는 기본 범위만 필요하므로 추가 범위 구성이 필요하지 않습니다. 저장하고 계속하기를 선택합니다.
요약 페이지에서 대시보드로 돌아가기를 선택합니다.
이제 OAuth 사용자 인증 정보 생성 절차를 계속 진행할 수 있습니다.
Google OAuth 동의 화면을 구성하는 방법에 대한 자세한 내용은 Google 지원 문서를 참조하세요.
OAuth를 사용하여 BigQuery용 Looker 연결 구성
BigQuery 연결에 OAuth를 사용 설정하려면 BigQuery에 Looker 연결을 설정할 때 Looker OAuth 페이지에서 OAuth 옵션을 선택합니다. OAuth 옵션을 선택하면 Looker에 OAuth 클라이언트 ID 및 OAuth 클라이언트 보안 비밀번호 필드가 표시됩니다. 이 페이지의 Google OAuth 사용자 인증 정보 생성 절차의 한 단계로서 가져온 클라이언트 ID 및 클라이언트 보안 비밀번호 값을 붙여넣으세요
BigQuery OAuth의 세션 길이를 설정한 경우 Looker 세션 제한 시간을 방지하려면 신뢰할 수 있는 앱 제외 기능을 사용하여 Looker를 신뢰할 수 있는 앱에 추가해야 합니다. 이 절차의 단계를 보려면 Google Cloud 서비스의 세션 길이 설정 도움말을 참조하세요.
Looker 사용자가 OAuth를 사용하여 BigQuery에 인증하는 방법
BigQuery에 대한 Looker 연결이 OAuth에 설정되면 사용자는 다음 중 하나를 수행하여 Looker에서 BigQuery 데이터베이스에 대한 초기 인증을 수행할 수 있습니다.
- BigQuery 연결을 사용하는 Looker 쿼리에서 Google에 인증
- Looker 계정 페이지의 OAuth 연결 사용자 인증 정보 섹션에서 Google에 인증
쿼리에서 Google에 인증
BigQuery에 대한 Looker 연결이 OAuth에 대해 설정되면 Looker는 사용자에게 BigQuery 연결을 사용하는 쿼리를 실행하기 전에 Google 계정으로 로그인하라는 메시지를 표시합니다. Looker는 탐색, 대시보드, Looks, SQL Runner에서 이 메시지를 표시합니다.
사용자는 로그인을 선택하고 OAuth로 인증해야 합니다. BigQuery에 인증한 후에는 사용자는 탐색에서 실행 버튼을 선택할 수 있으며 Looker는 데이터를 탐색에 로드합니다.
사용자 계정 페이지에서 Google에 인증
BigQuery에 대한 Looker 연결이 OAuth에 설정되면 사용자는 Looker 사용자 계정 페이지에서 Google 계정에 인증할 수 있습니다.
- Looker에서 프로필 아이콘을 선택하고 사용자 메뉴에서 계정을 선택합니다.
- OAuth 연결 사용자 인증 정보 섹션으로 이동하여 적절한 BigQuery 데이터베이스 연결에 대한 로그인 버튼을 선택합니다.
- Google 계정으로 로그인 페이지에서 적절한 계정을 선택합니다.
- OAuth 동의 화면에서 허용을 선택하여 Looker가 Google BigQuery의 데이터를 열람하고 관리할 수 있도록 합니다.
Looker를 통해 Google에 로그인하면 사용자 계정 맞춤설정 문서 페이지에 설명된 대로 계정 페이지를 통해 언제든지 사용자 인증 정보를 로그아웃하거나 재승인할 수 있습니다. Google BigQuery 토큰은 만료되지 않지만 사용자는 재승인을 선택하여 다른 Google 계정으로 로그인할 수 있습니다.
OAuth 토큰 취소
사용자는 Google 계정 설정에 방문하여 Looker와 같은 애플리케이션에서 Google 계정으로의 액세스를 revoke할 수 있습니다.
Google BigQuery 토큰은 만료되지 않습니다. 하지만 데이터베이스 관리자가 기존 사용자 인증 정보를 무효화하는 방식으로 데이터베이스 연결의 OAuth 사용자 인증 정보를 변경하면 사용자는 해당 연결을 사용하는 쿼리를 실행하기 전에 Google 계정으로 다시 로그인해야 합니다.
BigQuery 연결의 영구 파생 테이블
BigQuery 연결에 영구 파생 테이블(PDT)을 사용하려면 연결 구성에 따라 다음을 수행해야 할 수 있습니다.
- Google Cloud 콘솔을 사용하여 Looker에서 PDT를 작성하는 데 사용할 수 있는 임시 데이터 세트를 BigQuery 데이터베이스에 만듭니다. 절차는 이 페이지의 영구 파생 테이블의 임시 데이터 세트 만들기 섹션을 참조하세요. 이 단계는 연결의 다른 구성 옵션에 관계없이 PDT에 필요합니다.
- Google Cloud 콘솔에서 API Manager를 사용하여 Looker의 PDT 프로세스에 별도의 서비스 계정을 만듭니다. 절차는 이 페이지의 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 섹션을 참조하세요. 연결에 대한 인증 유형은 PDT 서비스 계정이 필요한지 여부, 그리고 Looker를 BigQuery에 연결 설정할 때 Looker의 연결 창에 PDT 서비스 계정 정보를 입력하는 위치에 영향을 줍니다.
- 사용자 인증에 OAuth를 사용하는 연결의 경우 PDT 프로세스에 별도의 서비스 계정을 만들어야 합니다. Looker의 연결 창에 있는 PDT 재정의 섹션에 서비스 계정 정보와 인증서 파일 세부정보를 입력합니다. 인증 필드에 OAuth 옵션을 사용하여 구성한 연결에 PDT 사용 설정 전환 버튼을 사용 설정하면 Looker의 연결 창에 PDT 재정의 섹션이 자동으로 표시됩니다. 자세한 내용은 OAuth를 사용하여 BigQuery에 Looker 연결용 PDT 사용 설정 섹션을 참조하세요.
- 사용자 인증에 서비스 계정이 사용되는 연결의 경우 PDT 프로세스에 별도의 서비스 계정을 만들 수 있습니다. 별도의 PDT 서비스 계정을 선택한 경우 Looker 연결 창의 서비스 계정 이메일, 서비스 계정 JSON/P12 파일, 비밀번호 필드의 PDT 재정의 섹션에 서비스 계정 정보를 입력합니다. 서비스 계정 인증을 사용하여 Looker를 BigQuery에 연결하기 위해 PDT 사용 설정 전환 버튼을 사용 설정하면 PDT 재정의 섹션이 표시됩니다.
영구 파생 테이블의 임시 데이터 세트 만들기
BigQuery 연결에 영구 파생 테이블 (PDT)을 사용 설정하려면 BigQuery에 Looker 연결을 설정할 때 Looker 연결 페이지에서 PDT 사용 설정 전환 버튼을 사용 설정합니다. PDT를 사용 설정하면 Looker에 임시 데이터 세트 필드가 표시됩니다. 이 필드에 Looker가 PDT를 만드는 데 사용할 수 있는 데이터 세트 이름을 입력합니다. 사전에 적절한 쓰기 권한을 사용하여 이 데이터베이스나 스키마를 구성해야 합니다.
Google Cloud 콘솔을 사용하여 임시 데이터 세트를 설정할 수 있습니다.
Google Cloud 콘솔을 열고 프로젝트를 선택합니다.
점 3개로 된 메뉴를 선택한 후 데이터 세트 만들기를 선택합니다.
데이터 세트 ID(일반적으로
looker_scratch
)를 입력한 후 데이터 위치(선택사항), 기본 테이블 만료 시간, 암호화 키 관리 솔루션을 선택합니다. 데이터 세트 만들기를 선택하여 완료합니다.
데이터 세트를 만들었으므로 BigQuery에 Looker 연결을 설정할 때 Looker 연결창의 임시 데이터 세트 필드에 데이터 세트 이름을 지정할 수 있습니다.
OAuth를 사용하여 BigQuery에 Looker 연결용 PDT 사용 설정
OAuth를 사용하는 BigQuery 연결의 경우 사용자가 OAuth 사용자 인증 정보를 사용하여 Looker에 인증합니다. Looker는 OAuth를 사용한 BigQuery 연결에 PDT를 지원하지만 Looker 자체는 OAuth를 사용할 수 없으므로 Looker가 PDT 프로세스를 위해 데이터베이스에 액세스할 수 있도록 BigQuery 서비스 계정을 설정해야 합니다.
Google Cloud API Manager를 사용하여 BigQuery 데이터베이스에 PDT 서비스 계정을 설정할 수 있습니다. 이 페이지의 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 섹션을 참조하세요.
BigQuery 데이터베이스에 서비스 계정을 만들었으면 BigQuery에 Looker 연결을 설정할 때 Looker 연결 창의 PDT 재정의 섹션에 서비스 계정 정보와 인증서 파일 세부정보를 입력합니다. 인증 필드에 OAuth 옵션을 사용하여 구성한 연결에 PDT 사용 설정 전환 버튼을 사용 설정하면 Looker의 연결 창에 PDT 재정의 섹션이 자동으로 표시됩니다. PDT 재정의 섹션에서 다음 필드를 사용하여 서비스 계정 정보를 입력하세요. Looker는 데이터베이스의 PDT 프로세스에 이 정보를 사용하게 됩니다.
- p12 또는 json 업로드: 파일 업로드 버튼을 사용하여 연결의 PDT 프로세스에 사용할 BigQuery 서비스 계정의 인증서 파일을 업로드합니다. 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 절차의 단계로서 Google Cloud API Manager에서 이 파일을 가져올 수 있습니다.
- 사용자 이름: 이 필드는 PDT 재정의 섹션의 p12 또는 json 업로드 필드에 P12 파일을 업로드하는 경우에만 적용됩니다. 연결의 PDT 프로세스에 사용하려는 BigQuery 서비스 계정의 이메일 주소를 입력합니다. 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 절차의 단계에 따라 Google Cloud API Manager에서 이 이메일 주소를 가져올 수 있습니다.
- 비밀번호: 이 필드는 PDT 재정의 섹션의 p12 또는 json 업로드 필드에 P12 파일을 업로드하는 경우에만 적용됩니다. 연결의 PDT 프로세스에 사용하려는 BigQuery 서비스 계정의 .p12 사용자 인증 정보 파일에 비밀번호를 입력합니다.
BigQuery에 Looker 연결
Looker의 관리 섹션에서 연결을 선택하여 연결 페이지를 열고 다음 중 하나를 수행합니다.
- 새 연결을 만들려면 연결 추가 버튼을 선택합니다.
- 기존 연결을 수정하려면 데이터베이스 테이블에서 연결을 찾은 후 연결 목록에서 수정 버튼을 선택합니다.
연결 세부정보를 작성합니다. 대부분의 설정은 대부분의 데이터베이스 언어에 공통적이며 Looker를 데이터베이스에 연결 문서 페이지에 설명되어 있습니다. 다음 설정은 특히 강조할 부분이나 BigQuery 연결에 구체적으로 어떻게 적용되는지 명확히 하기 위한 것입니다.
언어: Google BigQuery 표준 SQL 또는 Google BigQuery Legacy SQL을 선택합니다.
결제 프로젝트 ID: Google Cloud 결제 프로젝트의 프로젝트 ID(고유 식별자)입니다. 결제 프로젝트는 요금이 청구되는 Google Cloud 프로젝트이지만 LookML 개발자가 내 LookML 뷰, 탐색, 또는조인의
sql_table_name
매개변수에서 전체 범위 테이블 이름을 지정한 경우 다른 Google Cloud 프로젝트에서도 여전히 데이터 세트를 쿼리할 수 있습니다. BigQuery의 경우 전체 범위 테이블 이름 형식은<project_name>.<dataset_name>.<table_name>
입니다. 전체 범위 참조가 없으면 BigQuery는 Looker의 BigQuery 연결을 위해 Looker의 연결 페이지에서 지정한 결제 프로젝트 및 데이터 세트의 테이블을 찾습니다. BigQuery의 리소스 계층 구조에 대한 설명은 BigQuery 문서를 참조하세요.데이터 세트: Looker가 데이터베이스를 쿼리할 때 기본값으로 지정할 데이터 세트의 이름입니다. 기본 데이터 세트는 연결에 지정된 결제 프로젝트 내에 있어야 합니다. 데이터베이스 필드에
project_name.dataset_name
과 같은 값을 입력하여 다른 프로젝트의 데이터 세트를 지정할 수는 없습니다.LookML 개발자가 LookML 뷰, 탐색, 조인의
sql_table_name
매개변수에 전체 범위의 테이블 이름을 지정하면 내 LookML 프로젝트가 다른 데이터 세트의 테이블(공개 데이터 세트의 테이블 포함)에 액세스할 수 있습니다. BigQuery의 경우 전체 범위 테이블 이름 형식은<project_name>.<dataset_name>.<table_name>
입니다. 다른 데이터 세트의 테이블을 쿼리하려면 서비스 계정(서비스 계정 인증을 사용하는 연결의 경우) 또는 쿼리를 실행하는 사용자(OAuth 인증을 사용하는 연결의 경우)가 테이블에 액세스할 수 있어야 합니다. LookML 코드에서 전체 범위 테이블 이름을 지정하지 않으면 BigQuery는 BigQuery 연결의 데이터 세트 필드에 지정한 데이터 세트에서 테이블을 검색합니다.프로젝트에 데이터 세트가 없는 경우(별도의 프로젝트에서 컴퓨팅과 스토리지를 분리하는 경우라면), 임의의 데이터 세트 값을 제공할 수 있지만 LookML에서 항상 전체 범위 테이블 이름을 사용해야 합니다.
인증: Looker에서 데이터베이스에 액세스하는 데 사용할 인증 유형입니다. 이러한 옵션 중 일부는 Looker(Google Cloud 핵심 서비스) 인스턴스에서만 지원됩니다.
- 애플리케이션 기본 사용자 인증 정보: (Looker(Google Cloud 핵심 서비스)만 해당) 애플리케이션 기본 사용자 인증 정보(ADC)를 사용하여 데이터베이스에 인증하려면 이 옵션을 선택합니다(자세한 내용은 Looker(Google Cloud 핵심 서비스) 문서 참조).
- 서비스 계정: Looker용 BigQuery 서비스 계정을 사용하여 데이터베이스에 인증하려면 이 옵션을 선택합니다(자세한 내용은 BigQuery 서비스 계정으로 인증 참조). 서비스 계정을 선택하면 다음 필드가 표시됩니다.
- 서비스 JSON 또는 P12 파일 업로드: 파일 업로드 버튼을 사용하여 BigQuery 서비스 계정의 인증서 파일을 업로드합니다. 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 절차의 단계로서 Google Cloud API Manager에서 이 파일을 가져올 수 있습니다.
- 서비스 계정 이메일: 이 필드는 서비스 JSON 또는 P12 파일 업로드 필드에 P12 파일을 업로드하는 경우에만 적용됩니다. 서비스 계정 만들기 및 JSON 사용자 인증 정보 인증서 다운로드 절차의 단계로서 Google Cloud API Manager에서 가져오는 BigQuery 서비스 계정의 이메일 주소를 입력하세요.
- 비밀번호: BigQuery 서비스 계정의 P12 사용자 인증 정보 파일 비밀번호입니다. 비밀번호 필드는 서비스 JSON 또는 P12 파일 업로드 필드에 P12 파일을 업로드하는 경우에만 적용됩니다.
OAuth: 각 Looker 사용자가 Google BigQuery에 인증하고 Looker에서 사용자의 BigQuery 계정으로 데이터베이스에 액세스하도록 승인하려면 이 옵션을 선택합니다. BigQuery 연결에 OAuth를 구현하는 방법에 대한 자세한 내용은 이 페이지의 OAuth로 인증 섹션을 참조하세요. OAuth를 선택하면 다음 필드가 표시됩니다.
- OAuth 클라이언트 ID: OAuth 클라이언트 ID입니다. 이 정보는 Google OAuth 사용자 인증 정보 생성 절차의 단계에서 Google Cloud 콘솔에서 가져올 수 있습니다.
- OAuth 클라이언트 보안 비밀번호: OAuth 클라이언트 보안 비밀번호입니다. 이 정보는 Google OAuth 사용자 인증 정보 생성 절차의 단계에서 Google Cloud 콘솔에서 가져올 수 있습니다.
PDT 사용 설정: 연결에 영구 파생 테이블(PDT)을 허용하려면 이 전환을 사용 설정합니다. Looker에서 PDT를 작성하는 데 사용할 데이터베이스에 임시 데이터 세트를 지정해야 합니다. 절차는 이 페이지의 영구 파생 테이블의 임시 데이터 세트 만들기 섹션을 참조하세요. 참고: 연결이 OAuth용으로 연결을 구성한 경우 PDT 재정의 섹션을 사용하여 서비스 계정을 지정해야 하며, Looker는 BigQuery 연결의 PDT 프로세스에 이 정보를 사용합니다. 자세한 내용은 OAuth를 사용하여 BigQuery에 Looker 연결용 PDT 사용 설정 섹션을 참조하세요.
임시 데이터베이스: Looker가 데이터베이스에 영구 파생 테이블을 작성할 수 있도록 Google Cloud 콘솔에서 만든 BigQuery 데이터 세트입니다. 절차는 영구 파생 테이블의 임시 데이터 세트 만들기 섹션을 참조하세요.
데이터베이스 시간대: BigQuery의 기본 시간대는 UTC입니다. 여기에서 지정하는 시간대 설정은 BigQuery 시간대 설정과 일치해야 합니다. 자세한 내용은 Looker를 데이터베이스에 연결 페이지의 데이터베이스 시간대 섹션을 참조하세요.
쿼리 시간대: 자세한 내용은 Looker를 데이터베이스에 연결 페이지의 쿼리 시간대 섹션을 참조하세요.
추가 JDBC 파라미터: BigQuery 라벨과 같은 추가 JDBC 매개변수를 추가합니다. 자세한 설명은 BigQuery 연결에 대한 작업 라벨 및 컨텍스트 주석 섹션을 참조하세요. 다음은 지원되는 기타 매개변수입니다.
connectTimeout
: 연결을 기다리는 시간(밀리초). 기본값은 240000입니다.readTimeout
: 읽기를 기다리는 시간(밀리초). 기본값은 240000입니다.rootUrl
: 비공개 네트워크에 BigQuery 인스턴스가 있는 경우 기본 공개 엔드포인트 이외에 BigQuery에 연결할 대체 엔드포인트를 지정합니다.
최대 청구 기가바이트: BigQuery 연결에서는 쿼리 크기를 기준으로 각 쿼리에 대한 요금이 청구됩니다. 사용자가 실수로 너무 많은 쿼리를 실행하는 것을 방지하기 위해 사용자가 단일 쿼리에서 가져올 수 있는 최대 기가바이트 수를 설정할 수 있습니다. 쿼리 크기를 제한하지 않으면 최대 청구 기가바이트 필드를 비워 둘 수 있습니다. BigQuery 가격 책정 페이지에서 가격 책정에 대해 자세히 알아보세요.
노드당 최대 연결 수: 처음에 기본값으로 두어도 됩니다. 이 설정에 대한 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지의 최대 연결 수 섹션을 참조하세요.
연결 풀 제한 시간: 처음에는 기본값으로 둡니다. 이 설정에 대한 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지의 연결 풀 제한 시간 섹션을 참조하세요.
컨텍스트 사용 중지: 이 옵션은 BigQuery 연결에서 컨텍스트 주석을 사용 중지합니다. 컨텍스트 주석이 Google BigQuery의 캐시 기능을 무효화하고 캐시 성능에 부정적인 영향을 미칠 수 있으므로 기본적으로 Google BigQuery 연결의 컨텍스트 주석은 중지되어 있습니다. 컨텍스트 사용 중지 전환 버튼을 OFF로 설정하여 BigQuery 연결에 대해 컨텍스트 주석을 사용 설정할 수 있습니다. 자세한 내용은 BigQuery 연결에 대한 작업 라벨 및 컨텍스트 주석 섹션을 참조하세요.
SQL Runner 프리캐시: SQL Runner가 테이블 정보를 미리 로드하지 않고 대신 테이블이 선택된 경우에만 테이블 정보를 로드하려면 이 옵션을 선택 해제하세요. 자세한 내용은 Looker를 데이터베이스에 연결 페이지의 SQL Runner 프리캐시 섹션을 참조하세요.
연결에 적용 가능한 모든 필드를 작성한 후 필요에 따라 연결을 테스트할 수 있습니다.
이러한 설정을 저장하려면 연결을 클릭합니다.
연결 테스트
Looker UI의 몇몇 위치에서 연결 설정을 테스트할 수 있습니다.
- Looker를 데이터베이스에 연결 문서 페이지에 설명된 대로 연결 설정 페이지 하단에서 테스트 버튼을 선택합니다.
- 연결 문서 페이지에 설명된 대로 연결 관리 페이지의 연결 목록 옆에 있는 테스트 버튼을 선택합니다.
새 연결의 경우 Looker에 연결 가능이 표시되면 연결 추가를 선택합니다. Looker는 나머지 연결 테스트를 실행하여 서비스 계정이 올바르게 적절한 역할로 설정되었는지 확인합니다.
OAuth를 사용하는 연결 테스트
- Looker에서 개발 모드로 이동합니다.
- OAuth를 사용하는 기존 BigQuery 연결의 경우 BigQuery 연결을 사용하는 Looker 프로젝트의 프로젝트 파일로 이동합니다. OAuth를 사용하는 새 BigQuery 연결의 경우 모델 파일을 열고 모델의
connection
값을 새 BigQuery 연결 이름으로 바꾼 다음 모델 파일을 저장합니다. - 모델의 Explore 또는 대시보드 중 하나를 열고 쿼리를 실행합니다. 쿼리를 실행하려고 하면 Looker에 Google 계정으로 로그인하라는 메시지가 표시됩니다. Google OAuth 로그인 프롬프트에 따라 진행하세요.
BigQuery 연결에 대한 작업 라벨 및 컨텍스트 주석
BigQuery 연결의 경우 Looker에서 BigQuery 작업 라벨 형식으로 쿼리 컨텍스트를 전송합니다. 기본적으로 Looker는 BigQuery 연결에 대한 다음 컨텍스트 라벨 키를 전송합니다.
looker-context-user_id
: Looker 인스턴스에 있는 각 사용자의 고유 식별자입니다. 이 사용자 ID를 관리자 메뉴의 사용자 페이지에 있는 사용자 ID와 일치시킬 수 있습니다.looker-context-history_slug
: Looker 인스턴스가 데이터베이스에서 실행하는 각 쿼리의 고유 식별자입니다.looker-context-instance_slug
: 쿼리를 실행한 Looker 인스턴스의 ID 번호입니다. Looker 지원팀은 필요한 경우 이 정보를 사용하여 문제를 해결할 수 있습니다.
연결 페이지의 추가 JDBC 매개변수 텍스트 입력란을 사용하여 Looker가 BigQuery 연결에 대한 모든 쿼리와 함께 전송하도록 추가 작업 라벨을 구성할 수 있습니다. 추가 JDBC 매개변수 필드에 JDBC 매개변수 labels
를 추가하고 URL로 인코딩된 key=value
쌍의 쉼표로 구분된 목록을 제공합니다. 예를 들어 추가 JDBC 매개변수 필드에 이를 포함하는 경우 다음과 같이 됩니다.
labels=this%3Dconnection-label,that%3Danother-connection-label
%3D
는 =
의 URL 인코딩이므로 Looker가 기본 Looker 컨텍스트 라벨 외에도 BigQuery 데이터베이스로 전송하는 모든 쿼리에 다음 두 라벨이 추가됩니다.
this
:connection-label
that
:another-connection-label
BigQuery에는 작업 라벨에 대한 제한사항이 있습니다.
- 컨텍스트 라벨과 동일한 키가 있는 연결 라벨은 무시됩니다.
- 연결 라벨과 컨텍스트 라벨의 합집합이 최대 라벨 수인 64개를 초과하면 컨텍스트 라벨이 가장 먼저 삭제된 후 연결 라벨이 추가되어 총 라벨 수가 최대 64개가 될 때까지 라벨이 결정됩니다.
Looker는 컨텍스트 라벨이 모든 BigQuery 라벨 요구사항을 준수하는지 확인하지만 연결 라벨의 유효성은 확인하지 않습니다. 잘못된 연결 라벨을 구성하면 쿼리가 실패할 수 있습니다.
Looker가 기본적으로 전송하는 BigQuery 작업 라벨(looker-context-user_id
, looker-context-history_id
, looker-context-instance_slug
)은 Looker가 BigQuery가 아닌 데이터베이스 언어의 SQL 쿼리에 첨부하는 SQL 컨텍스트 주석과 일치합니다. BigQuery 연결의 경우 컨텍스트 주석은 BigQuery의 캐시기능을 무효화하고 캐시 성능에 부정적인 영향을 줄 수 있으므로 기본적으로 사용 중지됩니다. BigQuery 연결에 대한 컨텍스트 사용 중지 전환 버튼을 중지하면 BigQuery 연결에 대한 컨텍스트 주석을 사용 설정할 수 있습니다. BigQuery 캐시를 사용할 수 있도록 컨텍스트 주석 사용 중지의 기본 설정을 유지하는 것이 좋습니다. 하지만 BigQuery 연결에 대해 컨텍스트 주석 사용 중지 옵션을 선택 해제하면 Looker에서 SQL 컨텍스트 주석 및 BigQuery 작업 라벨을 데이터베이스로 전송합니다.
SQL 컨텍스트 주석과 BigQuery 작업 라벨에는 같은 정보가 전달됩니다. 예를 들어 Looker에서 쿼리에 대한 다음 SQL 컨텍스트 주석을 생성할 수 있습니다.
-- Looker Query Context
'{"user_id":1,"history_id":4757,"instance_slug":"ec2804ddef74c466f2a43e0afaa3ff6b"}'
그런 다음 Looker는 같은 쿼리에 대한 다음 BigQuery 작업 라벨을 생성합니다.
[{"value":"1","key":"looker-context-user_id"},
{"value":"4757","key":"looker-context-history_id"},
{"value":"ec2804ddef74c466f2a43e0afaa3ff6b","key":"looker-context-instance_slug"}]
기능 지원
Looker가 특정 기능을 지원하려면 데이터베이스 언어도 해당 기능을 지원해야 합니다.
Google BigQuery 표준 SQL
Google BigQuery 표준 SQL은 Looker 24.18부터 다음 기능을 지원합니다.
기능 | 지원 여부 |
---|---|
지원 수준 | 지원됨 |
Looker(Google Cloud 핵심 서비스) | 예 |
대칭 집계 | 예 |
파생 테이블 | 예 |
영구 SQL 파생 테이블 | 예 |
영구 기본 파생 테이블 | 예 |
안정적인 뷰 | 예 |
쿼리 종료 | 예 |
SQL 기반 피벗 | 예 |
시간대 | 예 |
SSL | 예 |
소계 | 예 |
JDBC 추가 파라미터 | 예 |
대소문자 구분 | 예 |
위치 유형 | 예 |
목록 유형 | 예 |
백분위수 | 예 |
고유 백분위수 | 예 |
SQL Runner 표시 프로세스 | 아니요 |
SQL Runner 설명 테이블 | 아니요 |
SQL Runner 표시 색인 | 아니요 |
SQL Runner 선택 10 | 예 |
SQL Runner 카운트 | 예 |
SQL 설명 | 아니요 |
OAuth 사용자 인증 정보 | 예 |
컨텍스트 주석 | 예 |
연결 풀링 | 아니요 |
HLL 스케치 | 예 |
집계 인식 | 예 |
증분 PDT | 예 |
밀리초 | 예 |
마이크로초 | 예 |
구체화된 뷰 | 예 |
대략적인 고유값 | 예 |
Google BigQuery Legacy SQL
Google BigQuery Legacy SQL은 Looker 24.18부터 다음 기능을 지원합니다.
기능 | 지원 여부 |
---|---|
지원 수준 | 지원됨 |
Looker(Google Cloud 핵심 서비스) | 아니요 |
대칭 집계 | 예 |
파생 테이블 | 예 |
영구 SQL 파생 테이블 | 예 |
영구 기본 파생 테이블 | 예 |
안정적인 뷰 | 아니요 |
쿼리 종료 | 예 |
SQL 기반 피벗 | 예 |
시간대 | 아니요 |
SSL | 예 |
소계 | 아니요 |
JDBC 추가 파라미터 | 예 |
대소문자 구분 | 예 |
위치 유형 | 예 |
목록 유형 | 예 |
백분위수 | 예 |
고유 백분위수 | 예 |
SQL Runner 표시 프로세스 | 아니요 |
SQL Runner 설명 테이블 | 아니요 |
SQL Runner 표시 색인 | 아니요 |
SQL Runner 선택 10 | 예 |
SQL Runner 카운트 | 예 |
SQL 설명 | 아니요 |
OAuth 사용자 인증 정보 | 예 |
컨텍스트 주석 | 예 |
연결 풀링 | 아니요 |
HLL 스케치 | 아니요 |
집계 인식 | 예 |
증분 PDT | 아니요 |
밀리초 | 예 |
마이크로초 | 예 |
구체화된 뷰 | 아니요 |
대략적인 고유값 | 예 |
다음 단계
데이터베이스를 Looker에 연결한 후 사용자의 로그인 옵션 구성하기