📅  最后修改于: 2023-12-03 15:30:53.046000             🧑  作者: Mango
Google Cloud Platform (GCP) 中的 Jupyter Notebook 可以和 GCP 的 BigQuery 服务相集成。在 Jupyter Notebook 中,我们可以使用 Magic BigQuery 插件来方便地查询 BigQuery 中的数据。同时,我们也可以在 Magic BigQuery 中使用 Python 变量来进行查询。
在 GCP 控制台的 BigQuery 服务中,我们需要先创建一个数据集,并在数据集中上传一些数据。具体操作可以参考官方文档。
在 Jupyter Notebook 中,我们需要安装 Google Cloud SDK 和 BigQuery Python SDK。具体操作可以参考官方文档。
同时,我们还需要安装 Magic BigQuery 插件,可以使用以下命令进行安装:
!pip install google-cloud-bigquery[magics]
在 Jupyter Notebook 中,我们需要先连接到 BigQuery 服务。我们可以使用以下代码进行连接:
from google.cloud import bigquery
from google.oauth2 import service_account
# Replace this Your Project Name with your GCP Project Name
project_id = 'your_project_name'
# Replace this Your Dataset Name with your BigQuery Dataset Name
dataset_id = 'your_dataset_name'
# Replace the credentials_path with your file path for the service account key
credentials_path = 'path/to/your/credentials.json'
credentials = service_account.Credentials.from_service_account_file(credentials_path)
client = bigquery.Client(project=project_id, credentials=credentials)
dataset_ref = client.dataset(dataset_id)
这里我们需要将上述代码中的 your_project_name
,your_dataset_name
和 path/to/your/credentials.json
替换成对应的值。
有了上述准备工作,我们就可以开始在 Magic BigQuery 中使用 Python 变量了。我们可以使用 %bigquery
命令来执行 BigQuery 查询语句。具体可以参考官方文档。
以下是一个例子:
# Replace table_name with your table name
table_name = 'your_table_name'
# define a parameterized query string
query = """
SELECT *
FROM `{}.{}.{}`
WHERE name = @name
"""
# define the query parameters
params = [
bigquery.ScalarQueryParameter('name', 'STRING', 'John'),
]
# execute the query with parameters
result = %bigquery execute --project $project_id --params $params $query.format(project_id, dataset_id, table_name)
# print the results
print(result)
这里我们需要将上述代码中的 your_table_name
替换成对应的值。
通过以上步骤,我们可以在 GCP Jupyter Notebook 中方便地使用 Magic BigQuery 插件来查询 BigQuery 中的数据,并且可以使用 Python 变量来方便地完成各种查询需求。