DynamoDB全局索引中的ItemSize

时间:2015-09-04 00:44:06

标签: indexing amazon-dynamodb

关于如何计算the size of items in dynamodb表,已经有一个问题。但是,根据我到目前为止所阅读的文档,如何计算查询在全局索引上返回的项目大小,我不清楚。

是表中项目的所有属性的大小,还是投影到索引中的项目的所有属性的大小?

到目前为止,我找到了以下资料:

  

对于查询和扫描操作,DynamoDB根据项目大小计算消耗的预配置吞吐量,而不是根据返回给应用程序的数据量。因此,无论您是使用ProjectionExpression参数请求所有属性(默认行为)还是仅使用其中一些属性,所消耗的容量单位数量都是相同的。 - AWS Reference

     

对于Query,返回的所有项目都被视为单个读取操作。因此,DynamoDB计算所有项目的总大小,然后向上舍入到下一个4 KB边界。 - AWS Reference

     

辅助索引中的数据包含从表中投影或复制到索引中的属性。创建辅助索引时,可以定义索引的备用键以及要在索引中投影的任何其他属性。 DynamoDB将这些属性以及表中的主键属性复制到索引中。然后,您可以像查询或扫描表一样查询或扫描索引。 - AWS Reference

有谁知道答案?

1 个答案:

答案 0 :(得分:1)

它基于索引条目的大小

来自GSI Throughput Considerations documentation(强调我的):

  

对于全局二级索引查询,DynamoDB以与对表的查询相同的方式计算预配置的读取活动。 唯一的区别是计算是基于索引条目的大小,而不是表格中项目的大小。读取容量单位的数量是所有预计属性大小的总和所有退回的物品;然后将结果向上舍入到下一个4 KB边界。有关DynamoDB如何计算预配置吞吐量使用情况的更多信息,请参阅Specifying Read and Write Requirements for Tables