Aracılığıyla paylaş


Azure HPC Önbelleği'nde dosya geri yazmayı özelleştirme

HPC Önbelleği kullanıcıları, flush_file.py yardımcı programını kullanarak önbelleğin belirli dosyaları isteğe bağlı olarak arka uç depolama alanına yazmasını isteyebilir. Bu yardımcı program, Linux istemci makinelerinde yükleyip kullandığınız ayrı olarak indirilen bir yazılım paketidir.

Bu özellik, önbelleğe alınmış dosyalarda yapılan değişikliklerin önbelleği bağlamamış sistemler için mümkün olan en kısa sürede kullanılabilir olmasını istediğiniz durumlar için tasarlanmıştır.

Örneğin, buluttaki bilgi işlem işlerinizi ölçeklendirmek için Azure HPC Önbelleği'ni kullanabilirsiniz, ancak veri kümenizi kalıcı olarak şirket içi veri merkezinde depolayabilirsiniz. İşlem görevleri Azure HPC Önbelleği ile oluşturulan değişikliklere bağlı olarak veri merkezinde gerçekleşirse, bulut görevi tarafından oluşturulan çıkışı veya değişiklikleri şirket içi NAS depolama alanına geri göndermek için bu yardımcı programı kullanabilirsiniz. Bu, yeni dosyaların şirket içi işlem kaynakları tarafından hemen kullanılmasını sağlar.

Özelleştirilmiş geri yazma ve boşaltma arasında seçim yapma

Azure HPC Önbelleği'nde yerleşik olarak bulunan "depolama hedefi temizleme" seçeneğiyle verilerin geri yazılması için zorlayabilirsiniz, ancak bu yaklaşım her durumda doğru olmayabilir.

  • Değiştirilen dosyaların tümünü depolama sistemine geri yazmak, veri miktarına ve şirket içi sisteme ağ bağlantısının hızına bağlı olarak birkaç dakika hatta saat sürebilir. Ayrıca, yalnızca bitirdiğiniz dosyaları yazılacak şekilde seçemezsiniz; hala etkin olarak değiştirilmekte olan dosyalar bu hesaplamaya dahil edilir.

  • Önbellek, temizleme işlemi sırasında bu depolama hedefinden bazı isteklerin sunulmasını engelleyebilir. Bu, aynı depolama hedefinde bulunan dosyaları kullanan başka işlem istemcileri varsa işlemeyi geciktirebilir.

  • Bu eylemin tetiklenmesi, son kullanıcıların sahip olmayabileceği Azure Resource Manager'a katkıda bulunan erişimi gerektirir.

Örneğin, aynı HPC Önbelleği depolama hedefinde bulunan verileri kullanan birden çok, ancak çakışmayan paralel hesaplama işleri aynı anda yapılabilir. Bir iş tamamlandığında, bu işin çıktısını önbellekten arka uçta uzun vadeli depolama alanınıza hemen yazmak istersiniz.

Üç seçeneğiniz vardır:

  • Önbelleğe alınan dosyaların önbellekten otomatik olarak geri yazılması için bekleyin; ancak dosyalar tamamen geri yazılmadan önce önbellekte bir saatten fazla kalabilir. Zamanlama, önbellek kullanım modelinizin geri yazma gecikmesine ve ağ bağlantısı performansı ve dosyaların boyutu gibi diğer faktörlere bağlıdır. (Geri yazma gecikmesi hakkında daha fazla bilgi edinmek için Önbellek kullanım modellerini anlama bölümüne bakın.)

  • Önbelleğe alınan dosyaları depolama hedefinin tamamı için hemen temizleyin; ancak bu, bu depolama hedefinin verilerini de kullanan diğer işlem işlerini kesintiye uğratabilir.

  • Önbelleğe yalnızca istediğiniz belirli dosyaları geri yazmak üzere özel bir NFS isteği göndermek için bu özelleştirilmiş geri yazma yardımcı programını kullanın. Bu senaryo diğer istemcilerin erişimini kesintiye uğratmaz ve işlem görevinin herhangi bir noktasında tetiklenebilir.

Geri yazma yardımcı programı hakkında

Geri yazma yardımcı programı, önbellekten uzun vadeli depolama sistemine yazılacak tek tek dosyaları belirtmek için kullanabileceğiniz bir betik içerir.

Betik, yazılacak dosyaların giriş akışını, depolama hedefinizin dışa aktarma için önbellek ad alanı yolunu ve HPC Önbelleği'nin bağlama IP adresini alır.

Betik, özel bağımsız değişkenler etkinleştirilmiş bir NFSv3 "commit" çağrısı kullanır. Linux nfs-common istemcisi bu bağımsız değişkenleri uygun şekilde iletemez, bu nedenle flush_file.py yardımcı programı, HPC Cache NFS hizmetiyle iletişim kurmak için bir Python kütüphanesindeki NFS istemci emülatörünü kullanır. Kitaplık, işlem istemcinizin Linux çekirdek tabanlı NFS istemcisinde mevcut olabilecek tüm sınırlamaları atlayan gerekli her şeyi içerir.

Bu özelliği kullanmak için aşağıdakileri yapmanız gerekir:

GitHub deposundaki flush_file.py betiğini yükleme ve kullanma hakkında daha fazla bilgi edinin.