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

时间:2014-06-18 19:42:00

标签: amazon-dynamodb boto throughput

假设我访问现有的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)

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

1 个答案:

答案 0 :(得分:4)

这样的事情应该有效:

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,即周期。