amazon-dynamodb - 我可以获得 DynamoDB 或 DynamoDB2 表的实际写入容量的值吗

假设我访问现有的 DynamoDB

import boto
conn = boto.connect_dynamodb(...)
table = conn.get_table(tableName)

或 DynamoDB2
import boto
from boto.dynamodb2.layer1 import DynamoDBConnection
from boto.dynamodb2.table import Table
conn = DynamoDBConnection(...)
table = Table(tableName, connection=conn)

table 。我想知道在我访问它之前写入了多少数据。所以我不想要预配置的写入吞吐量值,而是实际吞吐量。我怎样才能得到这些信息?

最佳答案

这样的事情应该工作:

import boto.ec2.cloudwatch
import datetime

end = datetime.datetime.utcnow()
start = end - datetime.timedelta(minutes=5)
c = boto.ec2.cloudwatch.connect_to_region('us-east-1')
data = c.get_metric_statistics(period=60, start_time=start, end_time=end,   
         metric_name='ConsumedWriteCapacityUnits', namespace='AWS/DynamoDB',
         statistics=['Sum'],dimensions={'TableName': 'mytable'})

这应该是一个数据点列表。您应该平均列表中的所有总和,然后将该数字除以 300,即周期。