【发布时间】:2019-04-05 08:52:01
【问题描述】:
在本地运行时,我的 Jupyter 笔记本能够像这样引用 Google BigQuery:
%%bigquery some_bq_table
SELECT *
FROM
`some_bq_dataset.some_bq_table`
以便稍后在我的笔记本中我可以引用 some_bq_table 作为 pandas 数据框,如下所示:https://cloud.google.com/bigquery/docs/visualize-jupyter
我想在 AWS SageMaker 上运行我的笔记本来测试一些东西。要使用 BigQuery 进行身份验证,似乎只有两种方法是在 GCP(或本地)上使用服务帐户,或者使用 env var 将 SDK 指向凭据 JSON(如下所述:https://cloud.google.com/docs/authentication/getting-started)。
例如
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/[FILE_NAME].json"
是否有从 SageMaker 连接到 bigquery 的简单方法?我现在最好的想法是将 JSON 从某处下载到 SageMaker 实例,然后从 python 代码设置环境变量。
例如,我会这样做:
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/home/user/Downloads/[FILE_NAME].json"
但是,这不是很安全 - 我不喜欢将我的凭据 JSON 下载到 SageMaker 实例的想法(这意味着我必须将凭据上传到一些私有 s3 存储桶,然后将它们存储在 SageMaker实例)。不是世界末日,但我宁愿避免这种情况。
有什么想法吗?
【问题讨论】:
标签: python google-bigquery amazon-sagemaker