【发布时间】:2016-09-13 19:22:03
【问题描述】:
我正在使用数据流作业将数据从谷歌存储写入 BigTable,我正在使用 3 个节点的 BigTable 集群,并且有 25 个工作人员在我的数据流作业中并行工作
当我检查大表的“写入请求”图表时,我观察到它在 1.5k-9k 之间波动,据我所知,它应该保持一致,因为我一直在传递数据。
当我检查日志时,我发现这个语句出现得太频繁了'Retrying failed call. Failure #1, got: Status{code=UNAVAILABLE, description=Temporary problem while looking up metadata for table AID_KRUXID, cause=null}'
只是想了解为什么我在“写请求”中看到这样的变化,上面的记录器语句对写请求有什么影响,或者还有其他我不知道的原因吗?
谢谢!提前
【问题讨论】:
-
1) 您是否有显示此问题的 Dataflow 作业 ID? 2) 除了您的 Dataflow 作业之外,还有其他内容写入此表吗?
-
@jkff 只有我的工作是写大表,工作 ID 是 2016-09-13_07_47_13-11809669185152159324
-
考虑使用 9 个 Dataflow 工作器,或在作业期间将您的 Bigtable 集群增加到 8-9 个节点。 25 个工作人员将压倒 3 个 Bigtable 集群,从而导致高延迟导致重试的不良状态,从而进一步压倒 Bigtable。我的经验法则是 3 个客户端 CPU 到 1 个 Bigtable 节点。
-
3 个集群 Big Table 节点应该给我们 30,000 QPS 但是当我检查“写入请求”图表时,它在 1.5k-9k 之间变化,因为我使用了 25 个工人(我也尝试过 50 个工人)但我的写请求从未超过 9k/秒。我们正在尝试达到至少 15k 的写入请求,然后根据我们可以决定是否要增加节点来检查我们的工作花费了多少时间。你能告诉我们为什么我们的写请求在 3 个节点的大表集群中不超过 9k。
-
@Amandeep – 你在写一个全新的空表吗?
标签: google-cloud-dataflow google-cloud-bigtable