是否有人有示例java代碼在dynamoDB表上執行掃描操作,其中掃描操作僅使用吞吐量限制的一定百分比? 在此先感謝。掃描具有受限讀取或吞吐量限制的dynamoDB表
回答
昨天我們發表了一篇關於AWS Java Developer Blog如何做Rate Limited Scans in Amazon DynamoDB的博客文章。我不確定你使用的是哪種編程語言,但是如果你使用的是Java,這種使用GoogleGuava類的方法可能適用於你。但格雷格早些時候的回覆也是正確的。如果您使用的是Amazon Elastic Map Reduce,則DynamoDB插件支持configurable read and write throughput percent,以便在掃描您的表時自行限制。 DynamoDB的Amazon Redshift integration也有這個設置。
下面是從博客文章,顯示如何執行分頁掃描本身限制了消費每使用RateLimiter秒25個的讀取容量單位的一個片段和AWS SDK for Java:
// Initialize the rate limiter to allow 25 read capacity units/sec
RateLimiter rateLimiter = RateLimiter.create(25.0);
// Track how much throughput we consume on each page
int permitsToConsume = 1;
// Initialize the pagination token
Map<String, AttributeValue> exclusiveStartKey = null;
do {
// Let the rate limiter wait until our desired throughput "recharges"
rateLimiter.acquire(permitsToConsume);
// Do the scan
ScanRequest scan = new ScanRequest()
.withTableName("ProductCatalog")
.withLimit(100)
.withReturnConsumedCapacity(ReturnConsumedCapacity.TOTAL)
.withExclusiveStartKey(exclusiveStartKey);
ScanResult result = dynamodb.scan(scan);
exclusiveStartKey = result.getLastEvaluatedKey();
// Account for the rest of the throughput we consumed,
// now that we know how much that scan request cost
double consumedCapacity = result.getConsumedCapacity().getCapacityUnits();
permitsToConsume = (int)(consumedCapacity - 1.0);
if(permitsToConsume <= 0) {
permitsToConsume = 1;
}
// Process results here
processYourResults(result);
} while (exclusiveStartKey != null);
感謝您發佈此信息。這正是我正在尋找的。 – CruncherBigData
爲什麼在這一行-1.0? allowsToConsume =(int)(consumedCapacity - 1.0); – Mike
- 1. WebSocket是否具有吞吐量限制?
- 2. 即使吞吐量很高,DynamoDB batch_write也會受到限制
- 3. 用RxJava限制吞吐量
- 4. 如何限制RabbitMQ的吞吐量?
- 5. 扭曲吞吐量限制減少
- 6. 低估DynamoDb吞吐量
- 7. DynamoDB吞吐量變化
- 8. DynamoDB掃描中的無限循環
- 9. dynamodb與延遲(或有限提供)掃描 - 的NodeJS
- 10. DynamoDB如何提供獨立於寫入的讀取吞吐量
- 11. 低數量用戶的Tomcat吞吐量限制
- 12. 讀取DynamoDB表掃描的容量成本
- 13. Cloud Spanner中的低讀取吞吐量
- 14. 如何設置DynamoDB吞吐量
- 15. 增加DynamoDB流+ Lambda吞吐量
- 16. 掃描目錄限制文件數量?
- 17. 如何在dynamodb中超過1mb的掃描數據限制
- 18. DynamoDB .Net限制使用'開頭'的掃描
- 19. 玻璃魚 - 吞吐量和通道尺寸的實際限制?
- 20. 我們可以限制luigi任務的吞吐量嗎?
- 21. PHP上傳掃描限制?
- 22. JMeter的吞吐量控制器中的吞吐量影響
- 23. YCSB低讀取吞吐量cassandra
- 24. DynamoDB在沒有任何節流的情況下讀吞吐量低於容量
- 25. 限制gstreamer管道吞吐量來模擬活動源
- 26. 卡夫卡Producer和Broker吞吐量限制
- 27. dynamodb列表表及其配置的吞吐量
- 28. 使用Java掃描器讀取長類型 - 字符數限制?
- 29. 如何計算AWS DynamoDB表的臨時吞吐量?
- 30. JMeter - 吞吐量控制器
我知道彈性圖減少可以做這個。 – greg