Bunu yapmak için paketlenmiş bir çözüm bilmiyorum, ama aslında sadece bir kova LİSTESİ ve daha sonra her bir nesneyi ABD kovasından AB kovasına PUT kopyalayın. PUT-copy API'si "eğer değiştirilmişse-beri" ve "eğer-hiçbiri-eşleşmez" i desteklediğinden, çoğaltma çabası olmadan tekrar tekrar çalıştırabilirsiniz:
http://docs.amazonwebservices.com/AmazonS3/2006-03-01/ API / index.html? RESTObjectCOPY.html
Canlı bir göç için aşağıdaki yaklaşımı öneririm:
- İsteğe bağlı ilk adım: Taşınacak çok fazla veri varsa, ABD'deki fiziksel bir cihazdaki verilerin ilk anlık görüntüsünü yakalamak ve fiziksel olarak AB'ye göndermek için AWS İçe Aktar / Dışa Aktar'ı kullanmayı düşünün. Bu size zaman ve para tasarrufu sağlayabilir.
- Yukarıda açıklandığı gibi if-modifiye edilmiş-beri veya if-none-match kullanarak verileri ABD'den AB'ye taşımak için bir komut dosyası oluşturun. Eski AB verileriyle yeni AB verilerini engellemeyecek kadar akıllı olun (aşağıdaki 5. adıma geçtiğinizde). İki kova kabaca aynı duruma gelene kadar bir döngüde sürekli olarak çalıştırın.
- Yalnızca ABD'den veri almaya devam ederken, web uygulamanızı hem ABD hem de AB gruplarına PUT verilerinde değiştirin.
- Kovaların tam olarak aynı durumda olduğundan emin olana (veya alabileceğiniz en yakın tutarlılığa sahip oluncaya kadar), geçiş komut dosyanızı çalıştırmaya devam edin.
- Web uygulamasını yalnızca AB grubundan verileri ALMAK için tekrar değiştirin.
- Artık taşıma komut dosyanızı kapatabilirsiniz.
- Nihai tutarlılık anomalilerini arayın ve temizleyin.
- ABD grubuna PUTting verisini durdurmak için web uygulamasını değiştirin.
- ABD grubundaki her şeyi SİL.
Veriler ABD verilerinin yalnızca bir kopyası olduğundan, daha ucuz veri hızları ve daha hızlı yanıt süreleri elde etmek için geçiş sırasında AB kovanızda S3 Azaltılmış Yedek Depolama'yı kullanmak isteyebilirsiniz.