KeySet 删除的 Spanner 突变限制

Spanner mutation limit for delete by KeySet

Cloud spanner 每次提交的突变限制为 20,000。对于使用 KeySet 的突变删除,这算作一个突变,还是 KeySet 的大小决定了突变的数量?例如:

  List<Mutation> mutations = new ArrayList<>();
  mutations.add(
      Mutation.delete(
          "Albums", KeySet.newBuilder().addKey(Key.of(2, 1)).addKey(Key.of(2, 3)).build()));


  dbClient.write(mutations);

这算是一个突变,还是两个?如果我正在使用 KeySet 进行批量删除,那么我是否需要将键分页为 20K 组?

KeySet 的大小决定了突变的数量,每个键都算作一个突变。

请注意,table 上的任何索引也会乘以每个键的变异计数:https://cloud.google.com/spanner/quotas#note2