【问题标题】:PANDAS - Import data from GCPPANDAS - 从 GCP 导入数据
【发布时间】:2020-11-18 15:17:24
【问题描述】:
我正在尝试从 GCP 导入数据,但出现以下错误。
代码:
import pandas as pd
from pandas.io import gbq
DF = """SELECT * FROM `im-test-209122.PPM_UAT.SAP_PS_CONSOLIDATED` LIMIT 1000"""
DF = gbq.read_gbq(DF,project_id="im-test-209122")
DF.head(3)
错误:
ConnectionError: ('Connection aborted.', ConnectionResetError(10054, '现有连接被远程主机强行关闭', None, 10054, None))
【问题讨论】:
标签:
python
pandas
google-cloud-platform
【解决方案1】:
您是否向 pandas_gbq 库提供了 BigQuery 身份验证?我使用服务帐户来提供此link 中信息的身份验证。您必须下载 json 密钥并使用 google.oauth2 库在代码中提供文件。
使用以下代码,我可以从我的 BigQuery 项目中查询数据。
from pandas.io import gbq
from google.oauth2 import service_account
sql = "SELECT * FROM PROJECT_ID.DATASET.TABLE"
credentials = service_account.Credentials.from_service_account_file('path-to-key-file.json')
df = gbq.read_gbq(sql, project_id="PROJECT_ID", credentials=credentials)
df.info()
print(df)
我不确定这是否面临您遇到的问题,因为我无法遇到与您相同的错误,但我希望它会有所帮助。