gpt4 book ai didi

google-bigquery - 将存储在 Google Cloud Storage 中的文件加载到 Big Query 时出错

转载 作者:行者123 更新时间:2023-12-03 19:42:20 25 4
gpt4 key购买 nike

我一直在努力创造一份工作到 负载从 Google Cloud Storage 到 Google BigQuery 表的压缩 json 文件。我对 Google Cloud Storage 和 Google BigQuery 都有读/写访问权限。此外,上传的文件与 BigQuery 属于同一项目。

当我访问此 url 后面的资源时会出现问题 https://www.googleapis.com/upload/bigquery/v2/projects/NUMERIC_ID/jobs通过 发布 要求。对上述资源的请求内容如下:

{
"kind" : "bigquery#job",
"projectId" : NUMERIC_ID,
"configuration": {
"load": {
"sourceUris": ["gs://bucket_name/document.json.gz"],
"schema": {
"fields": [
{
"name": "id",
"type": "INTEGER"
},
{
"name": "date",
"type": "TIMESTAMP"
},
{
"name": "user_agent",
"type": "STRING"
},
{
"name": "queried_key",
"type": "STRING"
},
{
"name": "user_country",
"type": "STRING"
},
{
"name": "duration",
"type": "INTEGER"
},
{
"name": "target",
"type": "STRING"
}
]
},
"destinationTable": {
"datasetId": "DATASET_NAME",
"projectId": NUMERIC_ID,
"tableId": "TABLE_ID"
}
}
}

}

但是,该错误没有任何意义,也可以在下面找到:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalid",
"message": "Job configuration must contain exactly one job-specific configuration object (e.g., query, load, extract, spreadsheetExtract), but there were 0: "
}
],
"code": 400,
"message": "Job configuration must contain exactly one job-specific configuration object (e.g., query, load, extract, spreadsheetExtract), but there were 0: "
}
}

我知道问题不在于项目 ID 或放置在身份验证 header 中的访问 token ,因为我之前已经成功创建了一个空表。我还指定内容类型标题为 application/json我认为这不是这里的问题,因为正文内容应该是 json 编码的。

提前致谢

最佳答案

您的 HTTP 请求格式不正确 - BigQuery 根本无法将其识别为加载作业。
您需要查看 POST 请求,并检查您发送的正文。

您需要确保以上所有(接缝正确)都是 body POST 调用。以上Json应该在一行上,如果您手动创建多部分消息,请确保在每个 MIME 类型的标题和正文之间有一个额外的换行符。

如果您正在使用某种类型的库,请确保正文不是其他形式的,例如资源、内容或正文。我见过以不同方式使用这些的库。

试用 BigQuery API 浏览器:https://developers.google.com/bigquery/docs/reference/v2/jobs/insert并确保您的请求正文与 API 生成的正文相匹配。

关于google-bigquery - 将存储在 Google Cloud Storage 中的文件加载到 Big Query 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23766775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com