У меня есть таблица DynamoDB, в которой хранятся метаданные элементов в S3 (то есть изображения и файлы).Иногда элементы S3 удаляются, а метаданные - нет.Поэтому я запускаю процесс, который сканирует всю таблицу DynamoDB, чтобы проверить, существует ли еще объект S3.Если нет, удалите строку DynamoDB.Но поскольку общее количество объектов увеличилось, сканирование заняло больше времени.Я хочу, чтобы все в DynamoDB сканировалось каждый день, независимо от размера таблицы.Итак, ищем предложение по дизайну для перезаписи сканирующего инструмента, который должен быть масштабируемым по горизонтали с таблицей.
В настоящее время я использую функцию параллельного сканирования, предоставляемую DynamoDB, чтобы разделить таблицу на 1000 частей.И добавьте больше потоков, чтобы сканировать каждую дополнительную часть одновременно.Таким образом, благодаря увеличению параллелизма, все сканирование завершается в более короткие сроки.И запланируйте процесс для запуска в полночь.Но я вижу, что этот метод потерпит неудачу, когда рост таблицы превысит некоторое пороговое значение, если сканирование одной детали занимает более 1 дня.