amazon-web-services - 检索 DynamoDB 表中所有数据并随后清除表的最佳方法
问题描述
我有兴趣接收位于我的 DynamoDB 表中的所有数据,然后最有效地清除表。
我已经看到如何删除一个项目并同时检索它- DynamoDB - 如何检索和删除(弹出)一个项目?. 我还看到数据库中的批量删除 - 从 DynamoDB 中删除大量项目的推荐方法是什么?.
理想情况下,我想同时清除表格并检索数据。有一个更好的方法吗?
解决方案
您可以从表中检索所有行,将其放入列表中,然后将列表发送到 dynamodbs 删除方法。这对我有用:
public async Task DeleteAllReadModelEntitiesInTable()
{
List<ReadModelEntity> readModels;
var conditions = new List<ScanCondition>();
readModels = await _context.ScanAsync<ReadModelEntity>(conditions).GetRemainingAsync();
var batchWork = _context.CreateBatchWrite<ReadModelEntity>();
batchWork.AddDeleteItems(readModels);
await batchWork.ExecuteAsync();
}
推荐阅读
- html - 由于路径问题,背景图像未在 html 中显示
- ios - 为什么 UITableViewCell 的 layoutSubviews 将标签的框架报告为 0?
- javascript - 在 iOS 的 Safari 中向上滚动到顶部会导致向上/向下滚动检测问题
- java - 如何在 android studio 而不是文本视图中为列表视图编码
- android - 迁移到 androidx 后膨胀类时出错
- python - numba 给出正确结果的否定,这是一个错误吗?
- generics - Kotlin 在从泛型类生成实例时提供类型
- android - Firebase 身份验证使用谷歌登录失败
- ios - 如何在 iOS 中设计这种带有左右动画的可交换卡片视图?
- r - 准备具有外部依赖项的 CRAN R 包 (nlopt)