Vad är Azure Batch?

Använd Azure Batch till att effektivt köra storskaliga parallella program och HPC-program (databehandling med höga prestanda) i Azure. Azure Batch skapar och hanterar en pool med beräkningsnoder (virtuella datorer), installerar de program som du vill köra och schemalägger jobb som ska köras på noderna. Det finns inget kluster- eller jobbschemaprogram för att installera, hantera eller skala. I stället kan du använda Batch-API: er och verktyg, kommandoradsskript eller Azure-portalen för att konfigurera, hantera och övervaka dina jobb.

Utvecklare kan använda Batch som en plattformstjänst för att skapa SaaS-program eller klientprogram där storskalig körning krävs. Du kan till exempel skapa en tjänst med Batch för att köra en Monte Carlo-risksimulering för ett företag för finansiella tjänster eller en tjänst för att bearbeta många bilder.

Det kostar inget extra att använda Batch. Du betalar bara för de underliggande resurserna som används, till exempel virtuella datorer, lagring och nätverk.

En jämförelse mellan Batch och andra HPC-lösningsalternativ i Azure finns i Databehandling med höga prestanda (HPC) på Azure.

Köra parallella arbetsbelastningar

Batch fungerar bra med parallella arbetsbelastningar. Dessa arbetsbelastningar har program som kan köras oberoende av varandra, där varje instans slutför en del av arbetet. När programmen körs kan de komma åt vissa vanliga data, men de kommunicerar inte med andra instanser av programmet. Parallella arbetsbelastningar kan därför köras i stor skala, vilket avgörs av hur stor del av beräkningsresurserna som är tillgängliga för att köra program samtidigt.

Några exempel på parallella arbetsbelastningar som du kan använda i Batch:

  • Finansiell riskmodellering med Monte Carlo-simuleringar
  • VFX och 3D-bildåtergivning
  • Bildanalys och bearbetning
  • Mediatranskodning
  • Genetisk sekvensanalys
  • Optisk teckenläsning (OCR)
  • Datainhämtning, bearbetning och ETL-åtgärder
  • Testkörning av programvara

Du kan också använda Batch för att köra nära kopplade arbetsbelastningar, där de program du kör måste kommunicera med varandra i stället för att köras oberoende av varandra. Nära kopplade program använder normalt Message Passing Interface (MPI) API. Du kan köra dina nära kopplade arbetsbelastningar med Batch med Microsoft MPI eller Intel MPI. Förbättra programmets prestanda med särskilda HPC och GPU-optimerade VM-storlekar.

Några exempel på nära kopplade arbetsbelastningar:

  • Analys med finita elementmetoden
  • Vätskedynamik
  • AI-utbildning med flera noder

Många nära kopplade jobb kan köras parallellt med Batch. Du kan till exempel utföra flera simuleringar av en vätska som flödar genom ett rör med varierande rörbredder.

Ytterligare funktioner för Batch

Batch har stöd för storskaliga återgivningsarbetsbelastningar med återgivningsverktyg inklusive Autodesk Maya, 3ds Max, Arnold och V-Ray.

Du kan också köra Batch-jobb som en del av ett större Azure-arbetsflöde för att omvandla data som hanteras av verktyg som Azure Data Factory.

Så här fungerar det

Ett vanligt scenario för Batch innebär att skala ut parallella arbeten, till exempel återgivningen av bilder för 3D-scener till en pool med beräkningsnoder. Den här poolen kan vara din "renderingsservergrupp" som tillhandahåller tiotals, hundratals eller till och med tusentals kärnor till renderingsjobbet.

Följande diagram illustrerar stegen i ett vanligt Batch-arbetsflöde med ett klientprogram eller en värdbaserad tjänst som använder Batch för att köra en parallell arbetsbelastning.

Diagram över stegen i en Batch-lösning.

Steg Beskrivning
1. Ladda upp indatafiler och program för att bearbeta dessa filer till ditt Azure Storage-konto. Indatafilerna kan vara data som ditt program bearbetar, till exempel modellering av finansdata eller videofiler som ska kodas. Programfilerna kan innehålla skript eller program som bearbetar data, till exempel en mediatranscoder.
2. Skapa en Batch-pool med beräkningsnoder i batchkontot, ett jobb för att köra arbetsbelastningen i poolen och uppgifter i jobbet. Beräkningsnoder är de virtuella datorer som kör dina uppgifter. Ange egenskaper för poolen, till exempel antalet och storleken på noderna, en Windows- eller Linux VM-avbildning och ett program som ska installeras när noderna ansluter till poolen. Hantera kostnaden och storleken på poolen med hjälp av virtuella Azure-datorer för oanvänd kapacitet eller genom att automatiskt skala antalet noder när arbetsbelastningen ändras.

När du lägger till aktiviteter till ett jobb schemalägger Batch-tjänsten automatiskt aktiviteterna för körning på beräkningsnoderna i poolen. Varje aktivitet använder det program som du överförde för att bearbeta indatafilerna.
3. Ladda ned indatafiler och programmen till Batch Innan varje uppgift körs kan den ladda ned indata som bearbetas till den tilldelade noden. Om programmet inte redan är installerat på noderna i poolen kan det laddas ned här i stället. När hämtningen från Azure Storage är slutförd körs aktiviteten på den tilldelade noden.
4. Övervaka aktivitetskörning När aktiviteterna utförs ska du köra frågor mot Batch för att övervaka jobbets och aktiviteternas förlopp. Ditt klientprogram eller -tjänst kommunicerar med Batch-tjänsten över HTTPS. Eftersom du kan övervaka tusentals aktiviteter som körs på tusentals beräkningsnoder, se till att effektivt fråga Batch-tjänsten.
5. Ladda upp aktivitetsutdata När aktiviteterna slutförs kan de ladda upp resultatdata till Azure Storage. Du kan också hämta filer direkt från filsystemet på en beräkningsnod.
6. Ladda ned utdatafiler När övervakningen upptäcker att aktiviteterna i jobbet har slutförts kan klientprogrammet eller tjänsten hämta utdata för vidare bearbetning.

Tänk på att arbetsflödet som beskrivs ovan bara är ett sätt att använda Batch, och det finns många andra funktioner och alternativ. Du kan till exempel köra flera aktiviteter parallellt på varje beräkningsnod. Eller så kan du använda jobbförberedelse- och slutförandeaktiviteter för att förbereda noderna för dina jobb och sedan rensa efteråt.

Se Batch-tjänstens arbetsflöde och resurser för en översikt över funktioner som pooler, noder, jobb och uppgifter. Se även de senaste Batch-tjänstuppdateringarna.

Datahemvist i regionen

Azure Batch flyttar eller lagrar inte kunddata från den region där den distribueras.

Nästa steg

Kom igång med Azure Batch med någon av dessa snabbstarter: