Nie jestem pewien, czy true rsync dobrze pasuje do Amazon.
Jak rozumiem, standardowy algorytm rsync oznacza, że klient oblicza skróty dla każdego bloku pliku, a serwer oblicza skróty dla swojej kopii i wysyła te skróty do klienta, co oznacza, że klient może określić, które bloki się zmieniły i wymagają przesłania.
To powoduje dwa problemy dla Amazon, ponieważ wiele skrótów musi zostać wysłanych przez Internet, a także wymaga mocy obliczeniowej do obliczenia wszystkich skrótów, które zwiększyłyby koszty Amazon - prawdopodobnie dlatego pozostawiają to zewnętrznym dostawcom, którzy mogą pobiera dodatkową opłatę za tę funkcję.
Jeśli chodzi o klony, to oczywiście przechowują gdzieś skróty, a gdzieś mogą się różnić w zależności od klonu. Mogłyby one przechowywać skróty jako osobny obiekt dla pliku w Amazon lub jako baza danych przechowywana w Amazon lub mogą przechowywać je lokalnie i zdalnie.
Są zalety i wady robienia tego w obu przypadkach. Jeśli skróty są przechowywane zdalnie w poszczególnych plikach, ciągłe ich pobieranie może być kosztowne. Jeśli skróty są przechowywane w bazie danych zdalnie, baza ta może stać się duża i ciągłe ich pobieranie i aktualizacja może być kosztowne. Jeśli skróty są przechowywane lokalnie, pomaga to zmniejszyć koszty, ale wprowadza inne komplikacje i problemy.
(Oczywiście Amazon ma inne usługi, więc możliwe byłoby prowadzenie bazy danych w Amazon DB)
Jako przykład wypróbowałem jeden wczesny klon rsync wiele lat temu. Nie zostało to napisane, aby wziąć pod uwagę strukturę cenową Amazon, i wydawało dużo http, aby odzyskać skrót każdego bloku, a ponieważ opłata Amazon za każde pobranie, oznaczało to, że podczas gdy część magazynu mojego rachunku spadła gwałtownie, część przeniesienia balonikowany.
Co stracę, używając duplikatu + s3 zamiast rsync + s3rsync + s3?
Tracisz fakt, że dzięki rsync wiesz, że porównujesz pliki źródłowe z plikami kopii zapasowej. W przypadku duplikatów i innych klonów porównujesz pliki źródłowe z hashem, który został pobrany podczas tworzenia kopii zapasowej. Na przykład może być możliwy bezpośredni dostęp do S3 i zastąpienie jednego z jego plików bez ponownego obliczania skrótu lub aktualizacji bazy danych skrótu.