适用于 Mac 的 Amazon DynamoDB GUI
通过键和索引浏览表,查看每次读取消耗的读取容量,不丢失类型地编辑项目,在编辑器执行 PartiQL 或 DynamoDB API 请求。
适用于 Mac首次选择 Amazon DynamoDB 时下载驱动


概览
- 查询语言
- PartiQL
- 驱动
- 首次使用时下载
- 连接方式
- 服务 API
- iPhone 和 iPad
- 无法打开
连接
选择 Auth Method、AWS Region,侧栏列出该区域的表。方式为带可选会话令牌的访问密钥、按 AWS CLI 方式读取 ~/.aws/config 和 ~/.aws/credentials 的配置,或会话过期时打开登录提示的 AWS IAM Identity Center 配置。
配置解析 credential_process 辅助程序和 role_arn 链,过期临时凭据重新获取并重试请求一次。所有请求经 HTTPS、Signature Version 4 签名,无 SSL 设置或 SSH 隧道。中国、European Sovereign Cloud 等其他 AWS 分区的区域自动访问自身端点,无需自定义。
DynamoDB Local 运行 docker run -p 8000:8000 amazon/dynamodb-local,选 DynamoDB Local (no credentials);8000 端口留空 Custom Endpoint。自定义端点仅在此 Mac 可用明文 HTTP。设置指南列出各任务需要的 IAM 操作 (英语)。
读取、筛选和编辑项目
打开、筛选和分页都经过同一规划器。用 = 固定分区键则对单分区 Query;符合索引键的筛选对该索引 Query;其余 Scan 读取全表,并对每个读取项目计费。状态栏显示所选读取方式、返回数、DynamoDB 为找到它们读取的数及消耗读取容量单位。
排序键的筛选为 =、<、<=、>、>=、BETWEEN、STARTS WITH 时加入键条件。其余变为 DynamoDB 读取后应用的 FilterExpression,减少行但不减少账单。嵌套属性用 address.city、items[0].sku 等路径筛选。
单分区 Query 点击排序键头让 DynamoDB 按该顺序返回。其他排序在读取包含所有匹配项目时由网格完成,否则状态栏注明。下一页从上页结束处继续。网格下总数是 DynamoDB 自身项目数;Count Exactly 读取所有符合筛选的项目,该读取全额计费。
表仅声明键,列来自项目:键属性、首批项目样本中的属性及当前页属性。map、list、set 显示 JSON 并在 JSON 编辑器打开,数字保留所有位。
各修改行保存为一个 PartiQL 语句,所有值保留类型:Number 仍为 Number,02134 等 String 仍为 String,JSON 编辑的 String Set 仍为 String Set。更新逐个检查改动属性是否等于网格加载值,宁可失败也不覆盖他人改动。Set NULL 移除属性。
编辑器接受名称双引号、字符串单引号的 PartiQL,或 DynamoDB 操作名后跟请求 JSON,如 Query、BatchWriteItem、TransactWriteItems。其他操作名拒绝。项目返回网格,其他响应显示 JSON。限流请求退避重试,⌘. 停止运行语句。
表和索引
New Table… 打开分区键、排序键、按需或预置容量、表类别、删除保护和二级索引表单,Preview 在发送前显示 CreateTable 请求。本地二级索引仅可在此创建表时定义。
Structure 标签页添加删除全局二级索引,每次保存一个修改,因为 DynamoDB 每个 UpdateTable 仅接受一个索引改动。这里不编辑属性:写入项目即可成为列。DDL 标签页显示重建表的 CreateTable 请求,含 Time to Live 和时间点恢复设置。
表设置
右击表选 Maintenance,设置时间点恢复、删除保护、流、表类别、切换按需容量或关闭 Time to Live。删除表发送 DeleteTable,删除保护开启时失败。
移动数据
DynamoDB 无导入。编辑器用 PartiQL INSERT 或 BatchWriteItem 请求写项目,后者重发未处理项目并报告无法写入者。在 Export 对话框将表或结果导出为文件。
iPhone 和 iPad
iPhone 和 iPad 应用没有 Amazon DynamoDB 驱动。从 Mac 同步的 Amazon DynamoDB 连接会显示在列表中,但无法打开。
限制
- 每个连接对应一个区域中的一个 AWS 账户。
- 不支持 DAX 端点,也不提供 Truncate。
关于 Amazon DynamoDB 的问题
如何避免读取扫描全表?
用 = 筛选分区键,或筛选全局索引分区键并为各排序键加筛选,读取即为 Query。仅投影所有属性的全局索引用于浏览;keys-only 索引请在编辑器用指定 IndexName 的 Query 请求查询。
如何修改项目的键?
键属性不可原地编辑。用 Duplicate Row 复制键以外的所有属性,给副本新键,保存后删除原项。
网格编辑在同一事务保存吗?
不是。各修改行独立写入。必须共同成功的写入放进编辑器的 ExecuteTransaction 或 TransactWriteItems 请求。
获取 TablePro
需要 macOS 13 Ventura 或更新版本