2013-11-15 13 views
0

我知道DynamoDB綁定了我設置的每秒寫入和讀取限制。這意味着當我刪除項目時,它們被綁定到相同的限制。我希望能夠在某個時間點刪除很多記錄,而不會對我的應用正在執行的其他操作產生負面影響。在不影響活動用戶的情況下刪除DynamoDB中的很多項目

因此,例如,如果我運行一個腳本來刪除10,000項,並且需要1分鐘,我不希望我的數據庫停止爲使用我的應用程序的其他用戶提供服務。有沒有辦法將兩者分開,一個用於後臺進程(admin)並給它自己的限制,另一個用於主進程(應用程序)?

注意:項目刪除將按日期範圍進行,我無法知道提前有多少項目。

應用在ASP.NET C#

感謝

回答

1

的限制在DynamoDB表爲自己,而不是在客戶端請求,所以答案是否定的。 一個解決辦法是編寫一個腳本來:

  • 增加了寫OPS限制
  • 運行在節流的方式刪除查詢,以便它僅使用舊的限制之間的偏移量和新設置的一個
  • 在操作完成後,
  • 減少了限制。

然後,您可以優化寫入/秒的擴展量,以平衡腳本完成所需的時間。

相關問題