DynamoDB 如何对表进行分区? [英] How does DynamoDB partition tables?

查看:19
本文介绍了DynamoDB 如何对表进行分区?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面我已经概括了您可以将自己的值插入的方程式.

<小时>

按容量划分的分区 = (RCUs/3000) + (WCUs/1000)

按大小划分的分区 = TableSizeInGB/10

Total Partitions = 取最大的 Partitions by capacityPartitions by size.将其四舍五入为整数.

<小时>

总的来说,一个分区最多可以包含 3000 个 RCU、1000 个 WCU 和 10GB 的数据.创建分区后,RCU、WCU 和数据将均匀分布在它们之间.

请注意,据我所知,一旦您创建了分区,降低 RCU、WCU 和删除数据不会导致删除分区.我目前没有这方面的参考资料.

The DynamoDB documentation describes how table partitioning works in principle, but its very light on specifics (i.e. numbers). Exactly how, and when, does DynamoDB table partitioning take place?

解决方案

I found this presentation produced by Rick Houlihan (Principal Solutions Architect DynamoDB) from AWS Loft San Franciso on 20th January 2016.

The presention is also on Youtube.

This slide provides the important detail on how/when table partitioning occurs:

And below I have generalised the equation you can plug your own values into.


Partitions by capacity = (RCUs/3000) + (WCUs/1000)

Partitions by size = TableSizeInGB/10

Total Partitions = Take the largest of your Partitions by capacity and Partitions by size. Round this up to an integer.


In summary a partition can contain a maximum of 3000 RCUs, 1000 WCUs and 10GB of data. Once partitions are created, RCUs, WCUs and data are spread evenly across them.

Note that, to the best of my knowledge, once you have created partitions, lowering RCUs, WCUs and removing data will not result in the removal of partitions. I don't currently have a reference for this.

这篇关于DynamoDB 如何对表进行分区?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆