Datamatning i Azure HPC Cache – msrsync-metod
Den här artikeln innehåller detaljerade instruktioner för hur du använder msrsync
verktyget för att kopiera data till en Azure Blob Storage-container för användning med Azure HPC Cache.
Mer information om hur du flyttar data till Blob Storage för Azure HPC Cache finns i Flytta data till Azure Blob Storage.
Verktyget msrsync
kan användas för att flytta data till ett lagringsmål för serverdelen för Azure HPC Cache. Det här verktyget är utformat för att optimera bandbreddsanvändningen genom att köra flera parallella rsync
processer. Den är tillgänglig från GitHub på https://github.com/jbd/msrsync.
msrsync
delar upp källkatalogen i separata "bucketar" och kör sedan enskilda rsync
processer på varje bucket.
Preliminära tester med en virtuell dator med fyra kärnor visade bästa effektivitet när du använde 64 processer. Använd alternativet msrsync
-p
för att ange antalet processer till 64.
Observera att msrsync
endast kan skriva till och från lokala volymer. Källan och målet måste vara tillgängliga som lokala monteringar på den arbetsstation som används för att utfärda kommandot.
Följ de här anvisningarna för att msrsync
fylla i Azure Blob Storage med Azure HPC Cache:
Installera
msrsync
och dess förutsättningar (rsync
och Python 2.6 eller senare)Fastställ det totala antalet filer och kataloger som ska kopieras.
Använd till exempel verktyget
prime.py
med argumentprime.py --directory /path/to/some/directory
(tillgängligt genom att https://github.com/Azure/Avere/blob/main/src/clientapps/dataingestor/prime.pyladda ned ).Om du inte använder
prime.py
kan du beräkna antalet objekt med GNU-verktygetfind
på följande sätt:find <path> -type f |wc -l # (counts files) find <path> -type d |wc -l # (counts directories) find <path> |wc -l # (counts both)
Dividera antalet objekt med 64 för att fastställa antalet objekt per process. Använd det här talet med
-f
alternativet för att ange storleken på bucketarna när du kör kommandot.msrsync
Utfärda kommandot för att kopiera filer:msrsync -P --stats -p64 -f<ITEMS_DIV_64> --rsync "-ahv --inplace" <SOURCE_PATH> <DESTINATION_PATH>
Det här kommandot är till exempel utformat för att flytta 11 000 filer i 64 processer från /test/source-repository till /mnt/hpccache/repository:
mrsync -P --stats -p64 -f170 --rsync "-ahv --inplace" /test/source-repository/ /mnt/hpccache/repository