用途:面向 AWS DynamoDB 的技能资料,帮助设计表结构、编写查询、配置索引、管理容量并排查性能问题。DynamoDB 是全托管 NoSQL 服务,支持键值与文档结构,可在任意规模下提供快速可预测性能。
主要能力:核心概念包括分区键(PK,必需,决定数据分布)、排序键(SK,可选,支持分区内范围查询)与复合键;二级索引分 GSI(不同 PK/SK、独立吞吐、最终一致)与 LSI(同 PK 不同 SK、共享表吞吐、可选强一致)。容量模式分按需(流量不可预测、按请求付费)与预置(流量可预测、成本更低、可自动扩缩)。
使用方式:可用 AWS CLI 或 boto3。创建表示例:aws dynamodb create-table --table-name Users --attribute-definitions AttributeName=PK,AttributeType=S AttributeName=SK,AttributeType=S --key-schema AttributeName=PK,KeyType=HASH AttributeName=SK,KeyType=RANGE --billing-mode PAY_PER_REQUEST。boto3 支持 put_item、get_item、update_item、delete_item、query、scan、batch_writer、batch_get_item,以及条件写入(ConditionExpression)与乐观锁。CLI 覆盖表操作、条目操作、批量与事务命令。
适用场景:需要按访问模式建模、用 query 替代 scan、使用稀疏索引与单表设计、批量操作降低调用、读密集启用 DAX、用 TTL 与 S3 归档优化成本。
限制与排查:预置吞吐可能触发 ProvisionedThroughputExceededException,原因包括热分区、突发流量、GSI 限流;可用自适应重试与指数退避。查询无结果需核对键值大小写、键类型、表/索引名,并注意过滤表达式在读取后生效。扫描慢且昂贵,可用并行扫描或建 GSI。具体收费、价格与平台细节暂未提供。