はじめに データベースにDynamoDBを使ってアプリケーション開発を行っているときに、クエリ結果を複数ページに分けて取得するページング/ページネーション処理を実装する必要が出てきた。 DynamoDBでは、結果が複数ページに分かれる際にはレスポンスの中に次ページの情報を表す文字列(NextToken)が返ってくるので、それを使って次のページのリクエストを再度発行すればよい。 しかし、1ページ目に当たるデータを取得した後にDynamoDBテーブル上のデータが増減した場合、1ページ目の結果と共に返されたNextToken を使って2ページ目のクエリを行うとどのような結果が返るのかという疑問に至った。 そこで、シンプルなテストデータを挿入しつつAWS CLIからクエリを実行して検証してみた。 DynamoDBテーブルを作ってテストデータを入れる 検証のためにDynamoDBに SamplePo
![Amazon DynamoDBのNextTokenを使ったページネーションの挙動を調査した](https://cdn-ak-scissors.b.st-hatena.com/image/square/4777900cb910b340994bb936ad09bba0d3cdff6c/height=288;version=1;width=512/https%3A%2F%2Fwww.playfulit.net%2Fstatic%2Fb940b3958d9d25b73a3e3d47224ca704%2Fbc3a8%2Fthumbnail.jpg)