Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
AzCopy, bir depolama hesabına iki yönlü blob veya dosya kopyalama işlemi gerçekleştirmenizi sağlayan bir komut satırı yardımcı programıdır. Bu makale performansı iyileştirmenize yardımcı olur.
Not
AzCopy'yi kullanmaya başlamanıza yardımcı olacak içerik için bkz. AzCopy'yi kullanmaya başlama.
Performansı karşılaştırabilir ve ardından komutlarla ortam değişkenlerini kullanarak performans ile kaynak tüketimi arasında en uygun dengeyi bulabilirsiniz.
Kıyaslama testleri çalıştırma
Genel performans istatistiklerini görüntülemek ve performans sorunlarını belirlemek için belirli blob kapsayıcılarında veya dosya paylaşımlarında performans karşılaştırma testi çalıştırabilirsiniz. Oluşturulan test verilerini karşıya yükleyerek veya indirerek testi çalıştırabilirsiniz.
Performans karşılaştırma testi çalıştırmak için aşağıdaki komutu kullanın.
Söz dizimi
azcopy benchmark 'https://<storage-account-name>.blob.core.windows.net/<container-name>'
Örnek
azcopy benchmark 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D'
İpucu
Bu örnek, yol bağımsız değişkenlerini tek tırnak işaretleri ('') içine alır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini çift tırnak ("") içine alın, tek tırnak ('') yerine.
Bu komut, test verilerini belirtilen hedefe yükleyerek bir performans karşılaştırması çalıştırır. Test verileri bellekte oluşturulur, hedefe yüklenir, ardından test tamamlandıktan sonra hedeften silinir. İsteğe bağlı komut parametrelerini kullanarak kaç dosya oluşturulacağını ve hangi boyutta olmasını istediğinizi belirtebilirsiniz.
Verileri indirerek bu testi çalıştırmayı tercih ediyorsanız parametresini mode olarak downloadayarlayın. Ayrıntılı başvuru belgeleri için bkz: azcopy benchmark.
Çok sayıda dosya için iyileştirme
Çok sayıda dosya aktarılırken aktarım hızı düşebilir. Her kopyalama işlemi, depolama hizmetinin yürütmesi gereken bir veya daha fazla işleme çevrilir. Çok fazla sayıda dosya aktardığınızda, yürütülmesi gereken işlem sayısını ve depolama hesabında aynı anda başka etkinliklerin gerçekleşmesi durumunda bu işlemlerin olası etkisini göz önünde bulundurun.
Performansı en üst düzeye çıkarmak için, tek bir işte kopyaladığınız dosya sayısını sınırlayarak her işin boyutunu küçültebilirsiniz. İndirme ve karşıya yükleme işlemleri için gerektiğinde eşzamanlı işlem sayısını artırın, günlük etkinliğini azaltın ve yüksek performans maliyetlerine neden olan özellikleri kapatın.
Her işin boyutunu küçültme
En iyi performansı elde etmek için her işin 10 milyondan az dosya aktardığından emin olun. AzCopy iş izleme mekanizması önemli miktarda ek yüke neden olduğundan, 50 milyondan fazla dosya aktaran işler kötü performans sergileyebilir. Ek yükü azaltmak için büyük işleri daha küçük işlere bölmeyi göz önünde bulundurun.
İşin boyutunu küçültmenin bir yolu, bir işten etkilenen dosya sayısını sınırlamaktır. Bunu yapmak için komut parametrelerini kullanabilirsiniz. Örneğin, bir görev include path komutunun bir parçası olarak parametresini kullanarak yalnızca dizinlerin bir alt kümesini kopyalayabilir.
include-pattern Belirli bir uzantıya sahip dosyaları kopyalamak için parametresini kullanın (örneğin: *.pdf). Ayrı bir işte, uzantısı *.pdf olmayan tüm dosyaları kopyalamak için exclude-pattern parametresini kullanın. Örnekler için Belirli dosyaları yükleme ve Belirli blobları indirme bölümlerine bakın.
Büyük işlerin daha küçük işlere nasıl bölüneceğine karar verdikten sonra, işleri birden fazla sanal makinede (VM) çalıştırmayı göz önünde bulundurun.
Eşzamanlılığı artırma
Dosyaları karşıya yüklüyor veya indiriyorsanız, makinenizde gerçekleşebilecek eşzamanlı istek sayısını artırmak için ortam değişkenini kullanın AZCOPY_CONCURRENCY_VALUE . Makinenizin performansından ödün vermeden bu değişkeni mümkün olduğunca yüksek bir değere ayarlayın. Bu değişken hakkında daha fazla bilgi edinmek için bu makalenin Eşzamanlı istek sayısını artırma bölümüne bakın.
Blobları depolama hesapları arasında kopyalıyorsanız, ortam değişkeninin değerini AZCOPY_CONCURRENCY_VALUE değerinden daha büyük bir değere ayarlamayı dikkate alın. AzCopy sunucudan sunucuya API'leri kullandığından, veriler doğrudan depolama sunucuları arasında kopyalandığından ve makinenizin işlem gücünü kullanmadığından bu değişkeni yüksek ayarlayabilirsiniz.
Oluşturulan günlük sayısını azaltma
AzCopy'nin bir işlemi tamamlarken oluşturduğu günlük girdilerinin sayısını azaltarak performansı geliştirebilirsiniz. Varsayılan olarak, AzCopy bir işlemle ilgili tüm etkinlikleri günlüğe kaydeder. En iyi performansı elde etmek için kopyalama, eşitleme veya kaldırma komutunun --log-level parametresini ERROR olarak ayarlamayı düşünün. Bu şekilde AzCopy yalnızca hataları günlüğe kaydeder. Varsayılan olarak, değer günlüğü düzeyi olarak INFOayarlanır.
Uzunluk denetimini kapatma
Dosyaları yükleyip indiriyorsanız, kopyalama ve eşitleme komutlarınızı --check-length'ı false olarak ayarlamayı göz önünde bulundurun. Bu ayar, AzCopy'nin aktarımdan sonra dosyanın uzunluğunu doğrulamasını engeller. Varsayılan olarak, AzCopy kaynak ve hedef dosyaların aktarım tamamlandıktan sonra eşleştiğinden emin olmak için uzunluğu denetler. AzCopy, her dosya aktarımının ardından bu denetimi gerçekleştirir. İşler çok sayıda küçük dosya aktardığında bu denetim performansı düşürebilir.
Eşzamanlı yerel taramayı açma (Linux)
Bazı Linux sistemlerinde dosya taramaları, tüm paralel ağ bağlantılarını doyuracak kadar hızlı yürütülemez. Bu gibi durumlarda, değerini AZCOPY_CONCURRENT_SCAN daha yüksek bir sayıya ayarlayabilirsiniz.
Eşzamanlı istek sayısını artırma
Ortam değişkenini AZCOPY_CONCURRENCY_VALUE ayarlayarak aktarım hızını artırabilirsiniz. Bu değişken gerçekleşebilecek eşzamanlı istek sayısını belirtir.
Bilgisayarınızda beşten az CPU varsa, bu değişkenin değeri olarak 32ayarlanır. Aksi takdirde, varsayılan değer CPU sayısının 16 ile çarpılmasıyla elde edilen değere eşittir. Bu değişkenin varsayılan değeri üst sınırıdır 300, ancak bu değeri el ile daha yüksek veya daha düşük bir değere ayarlayabilirsiniz.
Bu değişkenin geçerli değerini denetlemek için öğesini azcopy env kullanın. Değer boşsa, herhangi bir AzCopy günlük dosyasının başına bakarak hangi değerin kullanıldığını okuyabilirsiniz. Seçilen değer ve seçilme nedeni burada bildirilir.
Bu değişkeni ayarlamadan önce bir karşılaştırma testi çalıştırmanızı öneririz. Karşılaştırma testi işlemi önerilen eşzamanlılık değerini bildirir. Alternatif olarak, ağ koşullarınız ve yükleriniz farklılık gösteriyorsa, bu değişkeni belirli bir sayı yerine sözcük AUTO olarak ayarlayın. Bu ayar AzCopy'nin her zaman karşılaştırma testlerinde kullandığı otomatik ayarlama işlemini çalıştırmasına neden olur.
Veri aktarım hızını sınırlama
Komutlarınızdaki cap-mbps bayrağını, veri aktarım hızına bir tavan koymak için kullanın. Örneğin, aşağıdaki komut bir işi sürdürür ve aktarım hızını 10 saniyede megabit (Mb) olarak sınırlar. Bu özellik yalnızca dosyaları karşıya yüklemek veya indirmek için desteklenir, hesaplar arasında kopyalama için desteklenmez.
azcopy jobs resume <job-id> --cap-mbps 10
Bellek kullanımını iyileştirme
Ortam değişkenini, AzCopy'nin dosyaları indirirken ve karşıya yüklerken arabelleğe almak için kullanmasını istediğiniz en fazla sistem belleği miktarını belirtmek üzere ayarlayın. Bu değeri gigabayt (GB) cinsinden ifade edin.
Not
İş izleme her zaman bellek kullanımına ek yük getirir. Tutar, bir işteki aktarım sayısına göre değişir. Arabellekler bellek kullanımının en büyük bileşenidir. Gereksinimlerinizi yaklaşık olarak karşılamak için komutunu kullanarak AZCOPY_BUFFER_GB ek yükü denetlemeye yardımcı olabilirsiniz, ancak genel bellek kullanımını kesinlikle sınırlayabilecek bir bayrak yoktur.
Dosya eşitlemeyi iyileştirme
Eşitleme komutu hedefte tüm dosyaları tanımlar, ardından eşitleme işlemine başlamadan önce dosya adlarını ve son değiştirilen zaman damgalarını karşılaştırır. Çok sayıda dosyanız varsa, bu ön işlemeyi ortadan kaldırarak performansı geliştirebilirsiniz.
Bu hedefe ulaşmak için bunun yerine azcopy copy komutunu kullanın ve bayrağını --overwrite olarak ifSourceNewerayarlayın. AzCopy, ön tarama ve karşılaştırma gerçekleştirmeden dosyaları kopyalarken karşılaştırır. Bu yaklaşım, karşılaştırabileceğiniz çok sayıda dosya olduğu durumlarda bir performans avantajı sağlar.
azcopy copy komutu hedeften dosya silmez. Kaynakta artık bulunmayan dosyaları hedefte silmek istiyorsanız, azcopy sync komutunu --delete-destination bayrağı true veya prompt değerine ayarlanmış olarak kullanın.
İşleri paralel çalıştırmak için birden çok istemci kullanma
AzCopy, istemcide yalnızca bir örnek çalıştırıldığında en iyi performansı gösterir. Dosyaları paralel olarak aktarmak istiyorsanız, birden çok istemci kullanın ve her birinde yalnızca bir AzCopy örneği çalıştırın.