본문 바로가기

데이터/SQL

구글 코랩에서 빅쿼리 테이블 불러오기

빅쿼리로 불러온 데이터를 손쉽게 코랩으로 불러와 분석할 수 있는 방법을 소개한다.

1번은 데이터를 불러오는 속도가 빠르나, 약간 귀찮을 수 있고, 2번은 손쉬우나 데이터를 불러오는 속도가 느리다.

수십만 row가 넘어간다면 1번 방법을 추천한다.

1. bigframes 라이브러리로 불러오기(빠름)

1) 빅쿼리에서 내가 불러오고자하는 쿼리를 입력한후 작업기록에서 작업 ID확인

 

2) 설정

# @title Setup
from google.cloud import bigquery
from google.colab import data_table
import bigframes.pandas as bpd
import bigframes

project = 'dacon-ctr-prediction' # Project ID inserted based on the query results selected to explore
location = 'asia-northeast3' # Location inserted based on the query results selected to explore
client = bigquery.Client(project=project, location=location)
data_table.enable_dataframe_formatter()

bigframes.options.bigquery.project = project

 

3) 쿼리 확인 및 실행

job = client.get_job('{1}에서 복사한 작업ID}') # Job ID inserted based on the query results selected to explore
print(job.query)
# Running this code will read results from your previous job

job = client.get_job('374983b5-742e-4b26-b099-baf0ad1ad43b') # Job ID inserted based on the query results selected to explore
destination = job.destination

# Load data from a BigQuery table using BigFrames DataFrames:
bq_df = bpd.read_gbq(f"{destination.project}.{destination.dataset_id}.{destination.table_id}")
bq_df

 

4) pandas dataframe으로 변환하기

import pandas as pd

df = bq_df.to_pandas()

 

2. 구글 권한을 이용하여 코랩에서 쿼리 실행하기(간단)

1) 권한 설정

from google.colab import auth
auth.authenticate_user()

2) 쿼리 입력

import pandas as pd

project_id = 'dacon-ctr-prediction'
query = '''
{쿼리 입력}
'''

df = pd.read_gbq(query, project_id = project_id)
df

 

3) 불러와서 판다스 데이터프레임으로 분석하기

'데이터 > SQL' 카테고리의 다른 글

[SQL 기초] 문자열 합치기  (0) 2023.04.23
[SQL기초] Timestamp  (0) 2023.04.23
[SQL 기초] JOINS  (0) 2023.04.07
[SQL 기초] GROUP BY  (2) 2023.03.19
[SQL 기초] SELECT와 연산자  (0) 2023.03.04