DynamoDB SCAN operation cost with "Limit" parameter
<p>I'm pretty new to AWS DynamoDB and having read the documentation I'm not 100% sure what happens to cost calculations when using the '<strong>Limit</strong>' parameter in a <strong>SCAN</strong> operation.</p>

<p>I understand that one should design the tables so that <strong>QUERY</strong> operations are predominantly used and that a <strong>SCAN</strong> will scan the entire table, thus consuming a lot of read capacity. I also understand that a FilterExpression doesn't affect that cost of scanning the entire table, but filters what is returned <em>after</em> the entire scan, and if the total number of scanned items exceeds the maximum data set size limit of 1 MB, the scan stops and results are returned.</p>

<p>What I'm not sure of, is whether the '<strong>Limit</strong>' parameter is a type of FilterExpression, or whether it stops an entire scan, thus reducing read costs.</p>

<p>For example, if I had an activity table with a sort key that is a date field (updatedAt) and it had a million rows. If I performed a SCAN with a Limit = 10 (in order to get the very latest 10 activities), I would obviously get back 10 rows but would I be charged for reading a million rows? Cost is my main concern.</p>