superset은 무료로 쓸 수 있는 강력한 BI 도구입니다.
이번 글에서는 superset에서 BigQuery의 데이터를 읽어서 쓸 수 있도록 BigQuery를 연결하는 방법을 설명하고자 합니다.
superset의 버전은 1.1.0 버전으로 2021.05.18 기준으로 최신으로 설치하였습니다.
superset의 가장 상단에 메뉴에 data 부분에 Databases를 클릭하면 다음과 같이 나옵니다.
우측 상단에 + DATABASE 버튼을 클릭하면 새로운 DATABASE를 추가할 수 있습니다.
다른 옵션은 크게 채우지 않고 최소한의 옵션으로 BigQuery를 연결하도록 하겠습니다.
DATABASE NAME* : 사용할 DATABASE 명
SQLALCHEMY URL* : URL은 연결할 BigQuery 주소를 뜻 합니다.
- bigquery://BigQueryID값
- 위와 같이 넣어주시면 됩니다. BigQuery ID의 경우는 다음과 같이 볼 수 있습니다.
GCP에서 상단에 Account를 볼 수 있는 부분이 있는데, 이를 클릭하면 볼 수 있습니다.
- ID 값을 확인해서 위와 같은 형태로 SQLALCHEMY URL* 에 입력하면 됩니다.
그리고 SECURITY 탭에서 GCP 유저의 json 값을 입력해줘야 합니다.
superset에서 사용할 유저이므로, 개인 유저보다는 서비스 계정으로 만들었습니다.
GCP의 IAM에서 서비스 계정 부분에서 서비스 계정을 추가할 수 있습니다.
권한은 BigQuery 관리자로 줬습니다.
superset에 보니 옵션에 테이블을 만들 수도 있고 여러 가지 기능을 제공 하지만 Read만 하실 것을 추천드립니다.
(데이터를 가공 한 테이블에 Read만 하여 Chart를 만드는 게 안전합니다.)
이렇게 하고 완료를 누르면 서비스 계정이 한 개 만들어집니다.
그다음에 서비스 계정에서 키 탭을 클릭하여, 키를 생성합니다.
키를 만들면 json으로 다운로드할 수 있는데, 다운로드하여 잘 저장합니다.
저장된 키를 열어서 확인하면 다음과 같은 내용이 있습니다.
내용을 그대로 복사해서 SECURITY에 SECURE EXTRA에 붙여 넣습니다.
붙여 넣을 때 다음의 내용을 추가해서 넣어야 합니다.
{
"credentials_info":
{내용을 여기에 넣어주세요.}
}
이렇게 하고 TEST CONNECTION을 누르면 성공적으로 연결이 됩니다.
감사합니다.