Amazon S3'ten Azure Depolama'ya veri geçirmek için Azure Data Factory'yi kullanma

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

İpucu

Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!

Azure Data Factory, amazon S3'ten Azure Blob Depolama veya Azure Data Lake Storage 2. Nesil büyük ölçekte veri geçirmek için yüksek performanslı, sağlam ve uygun maliyetli bir mekanizma sağlar. Bu makalede veri mühendisleri ve geliştiriciler için aşağıdaki bilgiler sağlanır:

  • Performans
  • Dayanıklılığı kopyalama
  • Ağ güvenliği
  • Üst düzey çözüm mimarisi
  • Uygulama için en iyi yöntemler

Performans

ADF, geliştiricilerin ortamınız için veri taşıma aktarım hızını en üst düzeye çıkarmak için ağ bant genişliğinizi ve depolama IOPS'nizi ve bant genişliğini tam olarak kullanmak üzere işlem hatları oluşturmasına olanak tanıyan farklı düzeylerde paralelliğe olanak tanıyan sunucusuz bir mimari sunar.

Müşteriler Amazon S3'ten Azure Blob Depolama'a yüz milyonlarca dosyadan oluşan petabaytlarca veriyi başarıyla geçirerek 2 GBps ve üzeri bir aktarım hızı elde etti.

Diyagram, A D L S 2. Nesil'i Azure Blob Depolama için ilişkili kopyalama eylemleriyle bir A W S S3 deposundaki çeşitli dosya bölümlerini gösterir.

Yukarıdaki resimde, farklı paralellik düzeylerinde harika veri taşıma hızları elde etme adımları gösterilmektedir:

  • Tek bir kopyalama etkinliği ölçeklenebilir işlem kaynaklarından yararlanabilir: Azure Integration Runtime kullanırken, her kopyalama etkinliği için sunucusuz bir şekilde en fazla 256 DIU belirtebilirsiniz; şirket içinde barındırılan Integration Runtime'ı kullanırken, makinenin ölçeğini el ile artırabilir veya birden çok makineye (en fazla dört düğüm) ölçeği genişletebilirsiniz ve tek bir kopyalama etkinliği, dosya kümesini tüm düğümler arasında bölümlendirir.
  • Tek bir kopyalama etkinliği birden çok iş parçacığı kullanarak veri deposundan okur ve veri deposuna yazar.
  • ADF denetim akışı, birden çok kopyalama etkinliğini paralel olarak başlatabilir; örneğin, For Each döngüsünü kullanabilir.

Dayanıklılık

Tek bir kopyalama etkinliği çalıştırması içinde, ADF'nin veri depolarındaki veya temel alınan ağdaki belirli bir geçici hata düzeyini işleyebilmesi için yerleşik yeniden deneme mekanizması vardır.

S3'ten Blob'a ve S3'ten ADLS 2. Nesil'e ikili kopyalama yaparken, ADF otomatik olarak denetim noktası oluşturma gerçekleştirir. Kopyalama etkinliği çalıştırması başarısız olduysa veya zaman aşımına uğradıysa, sonraki bir yeniden denemede, kopyalama baştan başlamak yerine son hata noktasından devam eder.

Ağ güvenliği

Varsayılan olarak ADF, HTTPS protokolü üzerinden şifrelenmiş bağlantı kullanarak amazon S3'ten Azure Blob Depolama veya Azure Data Lake Storage 2. Nesil veri aktarır. HTTPS aktarım sırasında veri şifrelemesi sağlar ve gizlice dinleme ve ortadaki adam saldırılarını önler.

Alternatif olarak, verilerin genel İnternet üzerinden aktarılmasını istemiyorsanız AWS Direct Connect ile Azure Express Route arasında özel eşleme bağlantısı üzerinden veri aktararak daha yüksek güvenlik elde edebilirsiniz. Bunun nasıl başarılacağına ilişkin bir sonraki bölümde yer alan çözüm mimarisine bakın.

Çözüm mimarisi

Verileri genel İnternet üzerinden geçirme:

Diyagramda, A D F Azure'da Azure Integration Runtime aracılığıyla A W S S3 deposundan Azure Depolama'ya H T T P ile İnternet üzerinden geçiş gösterilmektedir. Çalışma zamanının Data Factory ile bir denetim kanalı vardır.

  • Bu mimaride veriler, genel İnternet üzerinden HTTPS kullanılarak güvenli bir şekilde aktarılır.
  • Hem kaynak Amazon S3 hem de hedef Azure Blob Depolama veya Azure Data Lake Storage 2. Nesil tüm ağ IP adreslerinden gelen trafiğe izin verecek şekilde yapılandırılır. Ağ erişimini belirli IP aralığıyla nasıl kısıtlayabileceğinizi öğrenmek için bu sayfanın devamında başvuruda bulunan ikinci mimariye bakın.
  • Ortamınız için en iyi aktarım hızını elde edebilmeniz için ağ ve depolama bant genişliğinizi tam olarak kullanmak için sunucusuz bir şekilde beygir gücü miktarını kolayca artırabilirsiniz.
  • Bu mimari kullanılarak hem ilk anlık görüntü geçişi hem de delta veri geçişi gerçekleştirilebilir.

Verileri özel bağlantı üzerinden geçirme:

Diyagramda, Azure sanal makinelerinde şirket içinde barındırılan tümleştirme çalışma zamanı aracılığıyla A W S S3 deposundan V Net hizmet uç noktalarına Azure Depolama'ya özel eşleme bağlantısı üzerinden geçiş gösterilmektedir. Çalışma zamanının Data Factory ile bir denetim kanalı vardır.

  • Bu mimaride, verilerin hiçbir zaman genel İnternet üzerinden dolaşmaması için AWS Direct Connect ile Azure Express Route arasındaki özel eşleme bağlantısı üzerinden veri geçişi gerçekleştirilir. AWS VPC ve Azure Sanal ağı kullanımını gerektirir.
  • Bu mimariyi elde etmek için Azure sanal ağınızdaki bir Windows VM'sine ADF şirket içinde barındırılan tümleştirme çalışma zamanı yüklemeniz gerekir. Ağınızı ve depolama IOPS'nizi/bant genişliğinizi tam olarak kullanmak için şirket içinde barındırılan IR VM'lerinizin ölçeğini el ile artırabilir veya birden çok VM'ye (dört düğüme kadar) ölçeklendirin.
  • Bu mimari kullanılarak hem ilk anlık görüntü veri geçişi hem de delta veri geçişi gerçekleştirilebilir.

Uygulama için en iyi yöntemler

Kimlik doğrulaması ve kimlik bilgisi yönetimi

İlk anlık görüntü veri geçişi

Özellikle 100 TB'tan fazla veri geçirilirken veri bölümü önerilir. Verileri bölümlendirmek için Amazon S3'teki klasörleri ve dosyaları ada göre filtrelemek için 'ön ek' ayarını kullanın ve ardından her ADF kopyalama işi bir kerede bir bölüm kopyalayabilir. Daha iyi aktarım hızı için birden çok ADF kopyalama işini eşzamanlı olarak çalıştırabilirsiniz.

Ağ veya veri deposu geçici sorunu nedeniyle kopyalama işlerinden herhangi biri başarısız olursa, ilgili bölümü AWS S3'ten yeniden yüklemek için başarısız kopyalama işini yeniden çalıştırabilirsiniz. Diğer bölümleri yüken diğer tüm kopyalama işleri etkilenmez.

Delta veri geçişi

AWS S3'ten yeni veya değiştirilmiş dosyaları tanımlamanın en yüksek performanslı yolu zaman bölümlenmiş adlandırma kuralını kullanmaktır. AWS S3'teki verileriniz dosya veya klasör adında zaman dilimi bilgileriyle (örneğin, /yyyy/mm/dd/file.csv) zaman dilimiyle bölümlendiğinde işlem hattınız hangi dosyaların/klasörlerin artımlı olarak kopyalandığını kolayca belirleyebilir.

Alternatif olarak, AWS S3'teki verileriniz zaman bölümlenmemişse, ADF yeni veya değiştirilmiş dosyaları LastModifiedDate ile tanımlayabilir. ADF,AWS S3'teki tüm dosyaları tarar ve yalnızca son değiştirilen zaman damgası belirli bir değerden büyük olan yeni ve güncelleştirilmiş dosyayı kopyalar. S3'te çok sayıda dosyanız varsa, filtre koşuluyla eşleşen dosya sayısından bağımsız olarak ilk dosya taraması uzun sürebilir. Bu durumda, ilk anlık görüntü geçişi için aynı 'ön ek' ayarını kullanarak ilk olarak verileri bölümlemeniz önerilir, böylece dosya taraması paralel olarak gerçekleşebilir.

Azure VM'de şirket içinde barındırılan Tümleştirme çalışma zamanı gerektiren senaryolar için

Verileri özel bağlantı üzerinden geçiriyor veya Amazon S3 güvenlik duvarında belirli IP aralığına izin vermek istiyorsanız Azure Windows VM'de şirket içinde barındırılan Tümleştirme çalışma zamanı yüklemeniz gerekir.

  • Her Azure VM için başlangıç olarak önerilen yapılandırma, 32 vCPU ve 128 GB belleğe sahip Standard_D32s_v3. Veri geçişi sırasında IR VM'nin CPU ve bellek kullanımını izlemeye devam ederek daha iyi performans için VM'nin ölçeğini artırmanız mı yoksa maliyet tasarrufu için mi ölçeği azaltmanız gerektiğini görebilirsiniz.
  • Ayrıca, şirket içinde barındırılan tek bir IR ile en fazla dört VM düğümü ilişkilendirerek ölçeği genişletebilirsiniz. Şirket içinde barındırılan bir IR'ye karşı çalışan tek bir kopyalama işi, dosya kümesini otomatik olarak bölümler ve tüm VM düğümlerini kullanarak dosyaları paralel olarak kopyalar. Yüksek kullanılabilirlik için, veri geçişi sırasında tek hata noktasını önlemek için iki VM düğümüyle başlamanız önerilir.

Hız sınırlaması

En iyi uygulama olarak, uygun bölüm boyutunu belirleyebilmeniz için temsili bir örnek veri kümesiyle performans POC'sini yürütebilirsiniz.

Tek bir bölümle ve varsayılan DIU ayarıyla tek bir kopyalama etkinliğiyle başlayın. Ağınızın bant genişliği sınırına veya veri depolarının IOPS/bant genişliği sınırına ulaşana veya tek bir kopyalama etkinliğinde izin verilen maksimum 256 DIU'ya ulaşana kadar DIU ayarını kademeli olarak artırın.

Ardından, ortamınızın sınırlarına ulaşana kadar eşzamanlı kopyalama etkinliklerinin sayısını kademeli olarak artırın.

ADF kopyalama etkinliği tarafından bildirilen azaltma hatalarıyla karşılaştığınızda, ADF'de eşzamanlılık veya DIU ayarını azaltın ya da ağ ve veri depolarının bant genişliği/IOPS sınırlarını artırmayı göz önünde bulundurun.

Fiyatı Tahmin Etme

Not

Bu, varsayımsal bir fiyatlandırma örneğidir. Gerçek fiyatlandırmanız ortamınızdaki gerçek aktarım hızına bağlıdır.

Verileri S3'ten Azure Blob Depolama geçirmek için oluşturulan aşağıdaki işlem hattını göz önünde bulundurun:

Diyagramda verileri geçirmek için kullanılan bir işlem hattı gösterilmektedir ve el ile Arama'ya, ForEach'e akarak, Saklı Yordama Kopyalama akışını içeren her bölüm için bir alt işlem hattına akmaktadır. İşlem hattının dışında Saklı Yordam, Arama'ya ve A W S S3 akışlarından Kopya'ya ve blob depolamaya akışla giden Azure SQL D B'ye akar.

Aşağıdakileri varsayalım:

  • Toplam veri hacmi 2 PB'dir
  • İlk çözüm mimarisini kullanarak VERILERI HTTPS üzerinden geçirme
  • 2 PB, 1 KB bölüme ayrılır ve her kopya bir bölüm taşır
  • Her kopya DIU=256 ile yapılandırılır ve 1 GB/sn aktarım hızına ulaşır
  • ForEach eşzamanlılığı 2 ve toplam aktarım hızı 2 GBps olarak ayarlanır
  • Toplamda geçişin tamamlanması 292 saat sürer

Yukarıdaki varsayımlara göre tahmini fiyat aşağıda belirtilmiştir:

Tahmini fiyatı gösteren bir tablonun ekran görüntüsü.

Ek başvurular

Template

Amazon S3'ten Azure Data Lake Storage 2. Nesil'a yüz milyonlarca dosyadan oluşan petabaytlarca veriyi geçirmek için başlangıç olarak kullanılacak şablon aşağıdadır.