java - BigQuery 插入请求的 DEADLINE_EXCEEDED 异常

标签 java google-app-engine google-bigquery

我今天观察到这个问题,其中 BigQuery 向流式插入请求返回了 DEADLINE_EXCEEDED 异常。错误响应如下:

{"insertErrors":[{"errors":[{"debugInfo":"bigtable::Deadline missed:/BTI_TabletServer.Apply to 10.73.63.65:25806 : DEADLINE_EXCEEDED","location":"""message":"","re​​ason":"timeout"}],"index":5},{"errors":[{"debugInfo":"bigtable::Deadline missed:/BTI_TabletServer.适用于10.73。 63.65:25806 : DEADLINE_EXCEEDED","location":"","message":"","re​​ason":"timeout"}],"index":6}],"kind":"bigquery#tableDataInsertAllResponse"

即使在 3 - 4 次重试尝试后我仍收到此错误。我尝试插入的行数约为 100,每行的大小非常小(小于 10kB)。谁能告诉我这是否是客户端问题?

最佳答案

BigQuery 的 SLA 为 99.99%。它不是 100%(就像所有其他云/服务一样)。这意味着你会时不时地遇到这样的暂时性错误——尤其是在流媒体上。因此,您需要在您的应用程序/代码/设计中考虑这一点,并使用指数退避重试技术以及您在其他地方使用和处理的某种队列(例如 Pub/Sub、SQS)。

关于java - BigQuery 插入请求的 DEADLINE_EXCEEDED 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46460816/

相关文章:

javascript - 如何转义 Google BigQuery 的 JavaScript UDF 中的字符?

java - 尝试为具有待处理请求的 session 请求新权限。Android

python - 安装 Google App Engine 后无法运行默认的 python 应用程序

python - 如何通过 Python GAE 将视频上传到 Google Cloud Storage?

python - GCS 实体的 blob_key 以后可以安全使用吗?

google-bigquery - BigQuery - 计算滑动时间范围内的事件数

java - 将 Spring Boot parent starter 从 1.5 升级到 2.1.1.Release

java - 简单的 Pig 脚本抛出 NotSerializedException : org. apache.log4j.Level

java - Float/Int/Double 的空间替换

google-bigquery - 如何在 Big Query 中使用不忽略 Null 的 where 语句