【问题标题】:Spanner load performance very low扳手负载性能非常低
【发布时间】:2020-01-24 15:40:01
【问题描述】:

我正在尝试使用 Dataflow 在 Spanner 中写入 TB 的数据。

为 spanner 实例配置了足够的节点,并且 Dataflow 使用 n1-standard-16 机器运行。

作业运行非常缓慢。 Spanner CPU 利用率自始至终都在限制范围内,写入延迟也非常少(以毫秒为单位)。基本上一切似乎都在掌控之中。没有同时在此实例上执行其他读/写操作。

负载可能有大约。一百万条记录可能与 Spanner 中的某些记录具有相同的键。我正在使用 InsertBuilder 来避免在 Spanner 中写入此类行。这可能是性能低下的主要原因吗?我还将 writeFailureMode() 用作“报告失败”(而不是“快速失败”)。所以根据我的说法,“已经存在”不应该过多地妨碍性能,但不确定。

【问题讨论】:

    标签: google-compute-engine google-cloud-dataflow apache-beam google-cloud-spanner


    【解决方案1】:

    错误来自 Beam SpannerIO.java。 SpannerIO 尝试将多个突变组批处理在一起,以更有效地写入 Cloud Spanner。但是,如果一个突变组有一个已经存在的键,则不能完整地写入该批次。相反,每个突变组都被单独尝试以成功写入每个没有重复键的突变组。由于在这种情况下批量大小有效地变为 1,因此插入性能会降低。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-21
      • 1970-01-01
      • 2018-02-25
      相关资源
      最近更新 更多