繁体   English   中英

如何从 dynamodb 中批量删除所有没有 TTL 的记录?

[英]How bulk delete all records without TTL from dynamodb?

正如问题所说,我在 dynamoDB 的一个表中有大约 2 亿条数据记录。 我正在用 nodejs 编写一个脚本,需要在没有 TTL 的情况下删除所有数据。 我对此有 3 个想法,我很好奇我应该如何 go 在如此多的记录上执行此操作。

  1. batchWrite,我会扫描这个选项,然后对整个表进行分页,删除每条记录,因为它满足当前没有 ttl 的条件

  2. 将所有没有 ttl 的记录推送到新表,然后立即删除该表

  3. 为没有记录的记录设置一个 ttl,但我找不到任何信息,如果这甚至是一件事,或者如果我可以以某种方式批量添加一个 ttl 到所有没有记录的记录

任何信息都有帮助,请让我知道如何 go 做这件事! 谢谢

我会用选项 1 go -

检查并行扫描文档,在此处粘贴一些信息。

Segment — 由特定 worker 扫描的段。 每个 worker 都应该为 Segment 使用不同的值。
TotalSegments — 并行扫描的段总数。 该值必须与您的应用程序将使用的工作人员数量相同。

在这里,每个段将在 DDB 在您的表上创建的每个分区上工作。 DDB 中的每个分区都是 10GB。 随着扫描/读取速度的加快,我们现在可以使用BatchWrites执行删除。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM