Масштабируемая синхронизация большого количества файлов на нескольких компьютерах

#amazon-s3 #configuration #filesystems #distributed #rclone

#amazon-s3 #конфигурация #файловые системы #распределенный #rclone

Вопрос:

Я ищу способ синхронизировать большое количество компьютеров (сотни) с удаленным репозиторием.

Хранилище состоит из небольших файлов (около 20 КБ), но общее количество достигает нескольких ГБ и продолжает расти со временем.

Цель состоит в том, чтобы изменения в удаленном репозитории распространялись как можно быстрее (не более 2 секунд) на все компьютеры. (синхронизация)

Существуют инструменты, которые обеспечивают именно эту функциональность, такие как S3 sync или Rclone, но имеют существенный недостаток:

Команде sync потребуется перечислить все файлы в корзине, чтобы определить, существует ли уже локальный файл в корзине и совпадает ли он с локальным файлом. Чем больше документов у вас в корзине, тем больше времени это займет. Это означает, что когда объем корзины станет большим, даже небольшое изменение потребует много времени.

Интересно, есть ли способ (инструмент или метод) синхронизировать только измененные файлы без необходимости просматривать все файлы. Вы можете представить сравнение метаданных в источнике и на удаленном компьютере, определить различия и действовать соответственно.

Как бы вы это сделали?