Escaneo completo de dynamoDb con boto3

Mi mesa tiene alrededor de 220mb con 250k registros dentro. Estoy tratando de extraer todos estos datos en Python. Me doy cuenta de que esto debe ser un proceso por lotes fragmentado y en bucle, pero no estoy seguro de cómo puedo configurar los lotes para que comiencen donde quedó el anterior.

¿Hay alguna forma de filtrar mi escaneo? Por lo que leí, el filtrado ocurre después de la carga y la carga se detiene en 1mb, por lo que en realidad no podría escanear nuevos objetos.

Cualquier ayuda sería apreciada.

import boto3
dynamodb = boto3.resource('dynamodb',
    aws_session_token = aws_session_token,
    aws_access_key_id = aws_access_key_id,
    aws_secret_access_key = aws_secret_access_key,
    region_name = region
    )

table = dynamodb.Table('widgetsTableName')

data = table.scan()

Respuestas a la pregunta(6)

Su respuesta a la pregunta