2016-06-24 195 views
0

我遇到了DynamoDB性能問題,我想清除一些令我困惑的東西。DynamoDB掃描性能問題

  • 當使用Attr(例如Attr=('Author').eq('some-well-known-author-with-many-books-written'))做scan爲表中的記錄books 100與條件。如果Author在表中找到20條記錄,那麼DynamoDB仍然會掃描其他80條記錄?
  • 掃描時分頁是如何工作的?
  • 消耗超過您分配的RCU和WCU的後果是什麼?

回答

0

回答你的問題依次是:

  • 是。 Scan表示對錶中的全部記錄的迭代。如果Author是您的分區鍵,並且您需要查找她編寫的所有書籍,則應該使用Query(而不是Scan),在這種情況下,它不會查看其他Author s。
  • 分頁按預期工作:如果你有n記錄在你的表,你Scan與限制設置爲m,DynamoDB將Scanm記錄,同時爲每個頁面返回的數據。
  • 如果您嘗試超出配置的RCU或WCU,DynamoDB將限制您的請求。如果這是你所擔心的,那麼不會有成本的影響。