Condividi tramite


Inserimento dati di Azure Cache HPC - metodo msrsync

Questo articolo fornisce istruzioni dettagliate sull'uso dell'utilità msrsync per copiare i dati in un contenitore di archiviazione BLOB di Azure da usare con Azure Cache HPC.

Per altre informazioni sullo spostamento dei dati nell'archivio BLOB per l'Cache HPC di Azure, vedere Spostare i dati nell'archivio BLOB di Azure.

Lo msrsync strumento può essere usato per spostare i dati in una destinazione di archiviazione back-end per l'Cache HPC di Azure. Questo strumento è progettato per ottimizzare l'utilizzo della larghezza di banda mediante l'esecuzione parallela di più processi rsync. È disponibile da GitHub all'indirizzo https://github.com/jbd/msrsync.

msrsync suddivide la directory di origine in contenitori separati e quindi esegue singoli processi rsync in ogni contenitore.

I test preliminari su una macchina virtuale con quattro core hanno indicato la massima efficienza utilizzando 64 processi. Usare l'opzione -p di msrsync per impostare il numero di processi su 64.

Si noti che msrsync può scrivere solo da e verso i volumi locali. L'origine e la destinazione devono essere accessibili come montaggi locali nella workstation usata per eseguire il comando.

Seguire queste istruzioni per popolare l'archiviazione msrsync BLOB di Azure con Azure Cache HPC:

  1. Installare msrsync e i relativi prerequisiti (rsync e Python 2.6 o versione successiva)

  2. Determinare il numero totale di file e directory da copiare.

    Ad esempio, usare l'utilità prime.py con argomenti prime.py --directory /path/to/some/directory (disponibili scaricando https://github.com/Azure/Avere/blob/main/src/clientapps/dataingestor/prime.py).

    Se non si usa prime.py, è possibile calcolare il numero di elementi con lo strumento GNU find come indicato di seguito:

    find <path> -type f |wc -l         # (counts files)
    find <path> -type d |wc -l         # (counts directories)
    find <path> |wc -l                 # (counts both)
    
  3. Dividere il numero di elementi per 64 per determinare il numero di elementi per ogni processo. Usare questo numero con l'opzione -f per impostare le dimensioni dei contenitori quando si esegue il comando.

  4. Eseguire il msrsync comando per copiare i file:

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

    Ad esempio, questo comando è progettato per spostare 11.000 file in 64 processi da /test/source-repository a /mnt/hpccache/repository:

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