【问题标题】:Invalid Path error while inserting job from google cloud storage to google bigquery将作业从谷歌云存储插入到谷歌 bigquery 时出现无效路径错误
【发布时间】:2014-01-31 20:14:45
【问题描述】:

我正在尝试通过 HTTP Post 请求插入作业,但我收到 Invalid path 错误。

我的请求正文如下:

{
"configuration": {
"load": {
"sourceUris": [
"gs://onianalytics/PersData.csv"
],
"schema": {
"fields": [
{
"name": "Name",
"type": "STRING"
},
{
"name": "Age",
"type": "INTEGER"
}
]
},
"destinationTable": {
"datasetId": "Test_Dataset",
"projectId": "lithe-anvil-404",
"tableId": "tb_test_Pers"
}
}
},
"jobReference": {
"jobId": "10",
"projectId": "lithe-anvil-404"
}
}

对于 sourceuri 参数,我传递“gs://onianalytics/PersData.csv”,其中 onianalytics 是我的存储桶名称,PersData.csv 是我的 csv 文件(我想从中将数据上传到 google bigquery)。

我收到以下回复:

"status": {
"state": "DONE",
"errorResult": {
"reason": "invalid",
"message": "Invalid path: gs://onianalytics/PersData.csv"
},
"errors": [
{
"reason": "invalid",
"message": "Invalid path: gs://onianalytics/PersData.csv"
}
]
},
"statistics": {
"creationTime": "1387276603674",
"startTime": "1387276603751",
"endTime": "1387276603751"
}
}

我的存储桶位于激活了 BigQuery 服务的同一 projectid 下。另外,我在 API 和 Auth 下启用了 Google Cloud Storage。身份验证时添加了以下范围:

googleapis.com/auth/bigquery、googleapis.com/auth/cloud-platform、googleapis.com/auth/devstorage.full_control、googleapis.com/auth/devstorage.read_only、googleapis.com/auth/devstorage.read_write

我通过“试试看!”插入此作业developer.google.com/bigquery/docs/reference/v2/jobs/insert 上提供的链接。

事实上,我可以通过 API 在 Goggle 云存储中创建存储桶和对象。但是当我尝试从上传的对象(这是一个 csv 文件)中插入作业时,我得到了“无效路径”错误。谁能帮我确定为什么会发生此错误?

【问题讨论】:

  • 我看到您的“onanalytics”存储桶正在使用default permissions。首先确保您的“PersData.csv”确实存在于您bucket 中。然后尝试使用使用项目IAM 中列出的任何用户帐户登录的 BigQuery 控制台,按照我们的guide 执行加载作业。

标签: google-bigquery google-cloud-storage


【解决方案1】:

我在尝试上面的代码时遇到的错误是“未找到:URI gs://onanalytics/PersData.csv”。

我想知道您是否使用了包含无效字符的不同路径而不是 /onanalytics/?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-30
    • 2018-10-30
    • 2017-02-10
    • 1970-01-01
    • 2019-09-22
    • 2014-07-25
    • 2020-09-10
    • 2017-02-10
    相关资源
    最近更新 更多