Flytta data till Azure Blob Storage

Om arbetsflödet omfattar att flytta data till Azure Blob Storage ska du se till att du använder en effektiv strategi. Du kan antingen läsa in data i en ny blobcontainer i förväg innan du definierar dem som lagringsmål, eller lägga till containern och sedan kopiera dina data med hjälp av Azure HPC Cache.

Den här artikeln beskriver de bästa sätten att flytta data till bloblagring för användning med Azure HPC Cache.

Tips

Den här artikeln gäller inte för NFS-monterad bloblagring (ADLS-NFS-lagringsmål). Du kan använda valfri NFS-baserad metod för att fylla i en ADLS-NFS-blobcontainer innan du lägger till den i HPC Cache. Läs Läsa in data i förväg med NFS-protokollet om du vill veta mer.

Tänk på följande:

  • Azure HPC Cache använder ett särskilt lagringsformat för att organisera data i bloblagring. Det är därför ett bloblagringsmål antingen måste vara en ny, tom container eller en blobcontainer som tidigare användes för Azure HPC Cache data.

  • Att kopiera data via Azure HPC Cache till ett lagringsmål för backend-lagring är effektivare när du använder flera klienter och parallella åtgärder. Ett enkelt kopieringskommando från en klient flyttar data långsamt.

Ett Python-baserat verktyg är tillgängligt för att läsa in innehåll i en bloblagringscontainer. Läs Läsa in data i förväg i Blob Storage om du vill veta mer.

Om du inte vill använda inläsningsverktyget, eller om du vill lägga till innehåll i ett befintligt lagringsmål, följer du tipsen om parallell datainmatning i Kopiera data via Azure HPC Cache.

Läs in data i bloblagring i förväg med CLFSLoad

Du kan använda verktyget Avere CLFSLoad för att kopiera data till en ny bloblagringscontainer innan du lägger till den som ett lagringsmål. Det här verktyget körs på ett enda Linux-system och skriver data i det upphovsrättsskyddade format som Azure HPC Cache. CLFSLoad är det effektivaste sättet att fylla i en bloblagringscontainer för användning med cachen.

Verktyget Avere CLFSLoad är tillgängligt via begäran från Azure HPC Cache team. Be din teamkontakt om den eller öppna en supportbegäran för att begära hjälp.

Det här alternativet fungerar endast med nya, tomma containrar. Skapa containern innan du använder Avere CLFSLoad.

Detaljerad information ingår i Avere CLFSLoad-distributionen, som är tillgänglig på begäran från Azure HPC Cache team.

En allmän översikt över processen:

  1. Förbered ett Linux-system (VM eller fysiskt) med Python version 3.6 eller senare. Python 3.7 rekommenderas för bättre prestanda.
  2. Installera Avere-CLFSLoad på Linux-systemet.
  3. Kör överföringen från Linux-kommandoraden.

Avere CLFSLoad-verktyget behöver följande information:

  • Lagringskontots ID som innehåller bloblagringscontainern
  • Namnet på den tomma bloblagringscontainern
  • En SAS-token (signatur för delad åtkomst) som gör att verktyget kan skriva till containern
  • En lokal sökväg till datakällan – antingen en lokal katalog som innehåller de data som ska kopieras eller en lokal sökväg till ett monterat fjärrsystem med data

Kopiera data via Azure HPC Cache

Om du inte vill använda verktyget Avere CLFSLoad, eller om du vill lägga till en stor mängd data till ett befintligt bloblagringsmål, kan du kopiera det via cacheminnet. Azure HPC Cache har utformats för att hantera flera klienter samtidigt, så för att kopiera data via cacheminnet bör du använda parallella skrivningar från flera klienter.

Diagram som visar dataflyttning med flera klienter och flera trådar: Längst upp till vänster finns flera pilar i en ikon för lokal maskinvarulagring. Pilarna pekar på fyra klientdatorer. Från varje klientdator pekar tre pilar mot Azure HPC Cache. Från Azure HPC Cache pekar flera pilar på bloblagring.

Kommandona eller som du vanligtvis använder för att överföra data från ett lagringssystem till ett annat är processer med en tråd som endast kopierar cp copy en fil i taget. Det innebär att filservern endast matar in en fil i taget – vilket är slöseri med cachens resurser.

I det här avsnittet beskrivs strategier för att skapa ett filkopieringssystem med flera klienter med flera trådar för att flytta data till bloblagring med Azure HPC Cache. Den förklarar filöverföringsbegrepp och beslutspunkter som kan användas för effektiv datakopiering med hjälp av flera klienter och enkla kopieringskommandon.

Här förklaras även några verktyg som kan vara till hjälp. Verktyget msrsync kan användas för att delvis automatisera processen med att dela upp en datauppsättning i buckets och använda rsync-kommandon. Skriptet parallelcp är ett annat verktyg som läser källkatalogen och utfärdar kopieringskommandon automatiskt.

Strategisk planering

När du skapar en strategi för att kopiera data parallellt bör du förstå kompromisserna vad gäller filstorlek, antal filer och katalogdjup.

  • När filerna är små är det intressanta måttet filer per sekund.
  • När filerna är stora (10MiBi eller större) är det intressanta måttet byte per sekund.

Varje kopieringsprocess har en dataflödeshastighet och en filöverföringshastighet som kan mätas genom tidsinställning av kopieringskommandots längd och faktorisering av filstorlek och antal filer. Att förklara hur du mäter frekvensen ligger utanför omfånget för det här dokumentet, men det är viktigt att förstå om du kommer att hantera små eller stora filer.

Strategier för parallell datainmatning med Azure HPC Cache omfattar:

Nästa steg

När du har ställt in din lagring kan du lära dig hur klienter kan montera cacheminnet.