Udostępnij za pośrednictwem


Pozyskiwanie danych usługi Azure HPC Cache — metoda msrsync

Ten artykuł zawiera szczegółowe instrukcje dotyczące używania msrsync narzędzia do kopiowania danych do kontenera usługi Azure Blob Storage do użycia z usługą Azure HPC Cache.

Aby dowiedzieć się więcej na temat przenoszenia danych do usługi Blob Storage dla usługi Azure HPC Cache, przeczytaj Przenoszenie danych do usługi Azure Blob Storage.

Narzędzie msrsync może służyć do przenoszenia danych do docelowego magazynu zaplecza dla usługi Azure HPC Cache. To narzędzie zostało zaprojektowane pod kątem optymalizacji użycia przepustowości przez uruchamianie wielu procesów równoległych rsync . Jest ona dostępna w witrynie GitHub pod adresem https://github.com/jbd/msrsync.

msrsync Dzieli katalog źródłowy na oddzielne "zasobniki", a następnie uruchamia poszczególne rsync procesy w każdym zasobniku.

Wstępne testowanie przy użyciu czterordzeniowej maszyny wirtualnej wykazało najlepszą wydajność podczas korzystania z 64 procesów. msrsync Użyj opcji -p , aby ustawić liczbę procesów na 64.

Należy pamiętać, że msrsync można zapisywać tylko do i z woluminów lokalnych. Źródło i miejsce docelowe muszą być dostępne jako lokalne instalacji na stacji roboczej używanej do wydawania polecenia.

Postępuj zgodnie z msrsync tymi instrukcjami, aby wypełnić usługę Azure Blob Storage za pomocą usługi Azure HPC Cache:

  1. Instalowanie msrsync i jego wymagania wstępne (rsync oraz środowisko Python w wersji 2.6 lub nowszej)

  2. Określ całkowitą liczbę plików i katalogów do skopiowania.

    Na przykład użyj narzędzia prime.py z argumentami prime.py --directory /path/to/some/directory (dostępnymi przez pobranie elementu https://github.com/Azure/Avere/blob/main/src/clientapps/dataingestor/prime.py).

    Jeśli nie używasz metody , możesz obliczyć liczbę elementów za pomocą prime.pynarzędzia GNU find w następujący sposób:

    find <path> -type f |wc -l         # (counts files)
    find <path> -type d |wc -l         # (counts directories)
    find <path> |wc -l                 # (counts both)
    
  3. Podziel liczbę elementów na 64, aby określić liczbę elementów na proces. Użyj tej liczby z opcją -f , aby ustawić rozmiar zasobników podczas uruchamiania polecenia.

  4. Wydaj polecenie , msrsync aby skopiować pliki:

    msrsync -P --stats -p64 -f<ITEMS_DIV_64> --rsync "-ahv --inplace" <SOURCE_PATH> <DESTINATION_PATH>
    

    Na przykład to polecenie jest przeznaczone do przenoszenia 11 000 plików w 64 procesach z /test/source-repository do /mnt/hpccache/repository:

    mrsync -P --stats -p64 -f170 --rsync "-ahv --inplace" /test/source-repository/ /mnt/hpccache/repository