Мне нужно обработать данные, сохраненные в корзине S3 с ключевой структурой client_id/uid
. Обновления S3 должны обрабатываться FIFO. Один из способов добиться этого - поставить в очередь обновления SQS, полезную нагрузку сообщения - ключ S3, а затем обработать это.
Однако это несправедливо, если некоторые клиенты продвигают больше обновлений, чем другие.
Предположим, я хочу сделать обработку справедливой для client_id. В идеале я хотел бы получить пакет сообщений очереди, которые содержат самое старое сообщение для каждого client_id. Пакет должен содержать одно сообщение для каждого клиента. Затем я начну несколько рабочих обрабатывать пакет, как только они все закончат, перейдите к следующей итерации.
Возможно ли это сделать без создания очереди SQS для каждого клиента?
Стоит ли использовать другой сервис AWS?