Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze zelfstudie leert u hoe u een Batch-taak activeert met behulp van Azure Functions. In dit artikel wordt een voorbeeld beschreven waarbij documenten die zijn toegevoegd aan een Azure Storage-blobcontainer, optische tekenherkenning (OCR) worden toegepast met behulp van Azure Batch. Als u de OCR-verwerking wilt stroomlijnen, configureert dit voorbeeld een Azure-functie waarmee een Batch OCR-taak wordt uitgevoerd telkens wanneer een bestand wordt toegevoegd aan de blobcontainer. U leert het volgende:
- Gebruik het Azure-portaal om pools en taken te maken.
- Blobcontainers en een SAS (Shared Access Signature) maken.
- Een door een blob geactiveerde Azure-functie maken.
- Invoerbestanden uploaden naar Storage.
- Taakuitvoering bewaken.
- Uitvoerbestanden ophalen.
Vereiste voorwaarden
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een Azure Batch-account en een gekoppeld Azure Storage-account. Zie Een Batch-account maken en koppelen voor meer informatie over het maken en koppelen van accounts.
Aanmelden bij Azure
Meld u aan bij het Azure-portaal.
Een Batch-pool en Batch-taak maken met behulp van Azure Portal
In deze sectie gebruikt u Azure Portal om de Batch-pool en Batch-taak te maken waarmee OCR-taken worden uitgevoerd.
Een pool maken
Meld u aan bij Azure Portal met uw Azure-referenties.
Maak een pool door Pools te selecteren in de navigatie aan de linkerkant en vervolgens de knop Toevoegen boven het zoekformulier te selecteren.
- Voer een pool-id in. In dit voorbeeld wordt de pool
ocr-poolgenoemd. - Selecteer Canonical als Uitgever.
- Selecteer 0001-com-ubuntu-server-jammy als de aanbieding.
- Selecteer 22_04-lts als de SKU.
- Kies
Standard_F2s_v2 - 2 vCPUs, 2 GB Memoryals de VM-grootte in de sectie Knooppuntgrootte . - Stel de modus in de sectie Schaal in op Vast en voer 3 in voor de toegewezen doelknooppunten.
- Stel de begintaak in op De begintaak inschakelen en voer de opdracht
/bin/bash -c "sudo update-locale LC_ALL=C.UTF-8 LANG=C.UTF-8; sudo apt-get update; sudo apt-get -y install ocrmypdf"in de opdrachtregel in. Zorg ervoor dat u het hoogteniveau instelt als automatische gebruikersgroep, beheerder, waarmee u taken kunt starten met opdrachten metsudo. - Kies OK.
- Voer een pool-id in. In dit voorbeeld wordt de pool
Een taak maken
- Maak een taak in de pool door Taken te selecteren in de navigatie aan de linkerkant en kies vervolgens de knop Toevoegen boven het zoekformulier.
- Voer een taak-id in. In dit voorbeeld wordt
ocr-jobgebruikt. - Selecteer
ocr-poolvoor de huidige pool of de naam die u voor uw pool hebt gekozen. - Kies OK.
- Voer een taak-id in. In dit voorbeeld wordt
Blobcontainers maken
Hier maakt u blobcontainers die uw invoer- en uitvoerbestanden voor de OCR Batch-taak opslaan. In dit voorbeeld heeft de invoercontainer de naam input en worden alle documenten zonder OCR in eerste instantie geüpload voor verwerking. De uitvoercontainer heeft de naam output en is de plaats waar de Batch-taak verwerkte documenten schrijft met OCR.
Zoek en selecteer Opslagaccounts in Azure Portal.
Kies uw opslagaccount dat is gekoppeld aan uw Batch-account.
Selecteer Containers in de navigatie aan de linkerkant en maak twee blobcontainers (één voor invoerbestanden, één voor uitvoerbestanden) door de stappen te volgen bij Een blobcontainer maken.
Maak een Shared Access Signature voor uw uitvoercontainer door de uitvoercontainer te selecteren en selecteer op de pagina Gedeelde toegangstokensde optie Schrijven in de vervolgkeuzelijst Machtigingen . Er zijn geen andere machtigingen nodig.
Selecteer SAS-token en URL genereren en kopieer de BLob-SAS-URL om later voor uw functie te gebruiken.
Een Azure-functie maken
In deze sectie maakt u de Azure-functie waarmee de OCR Batch-taak wordt geactiveerd wanneer een bestand wordt geüpload naar uw invoercontainer.
Volg de stappen in Een functie maken die wordt geactiveerd door Azure Blob Storage om een functie te maken.
- Kies .NET voor runtimestack. In deze voorbeeldfunctie wordt C# gebruikt om te profiteren van de Batch .NET SDK.
- Gebruik op de pagina Opslag hetzelfde opslagaccount dat u aan uw Batch-account hebt gekoppeld.
- Selecteer Beoordelen + Maken > Maken.
De volgende schermopname van de pagina Functie-app maken op het tabblad Basisinformatie met behulp van voorbeeldinformatie.
Selecteer Functies in de navigatie aan de linkerkant in uw functie en selecteer Maken.
Selecteer in het deelvenster Functie maken de Azure Blob Storage-trigger.
Voer een naam in voor uw functie in Nieuwe functie. In dit voorbeeld is de naam OcrTrigger. Voer het pad in als
input/{name}, waarbij 'invoer' de naam is van uw Blob-container.Klik op Creëren.
Zodra de door de blob geactiveerde functie is gemaakt, selecteert u Code + Test. Gebruik de
run.csxenfunction.projvanuit GitHub in de functie.function.projbestaat niet standaard. Selecteer daarom de knop Uploaden om deze te uploaden naar uw ontwikkelwerkruimte.-
run.csxwordt uitgevoerd wanneer een nieuwe blob wordt toegevoegd aan uw invoerblobcontainer. -
function.projbevat de externe bibliotheken in uw functiecode, bijvoorbeeld de Batch .NET SDK.
-
Wijzig de waarden van de tijdelijke aanduidingen van de variabelen in de
Run()functie van hetrun.csxbestand om uw Batch- en opslagreferenties weer te geven. U vindt de referenties van uw Batch- en opslagaccount in de Azure-portal in de sectie Sleutels.
De functie activeren en resultaten ophalen
Upload een of alle gescande bestanden uit de input_files map op GitHub naar uw invoercontainer.
U kunt uw functie testen vanuit Azure Portal op de pagina Code + Test van uw functie.
- Selecteer Testen/uitvoeren op de pagina Code + Test .
- Voer het pad in voor de invoercontainer in de hoofdtekst op het tabblad Invoer .
- Selecteer Voeruit.
Na enkele seconden wordt het bestand waarop OCR is toegepast, toegevoegd aan de uitvoercontainer. Logboekinformatie wordt uitgevoerd naar het onderste venster. Het bestand is vervolgens zichtbaar en ophaalbaar in Storage Explorer.
U kunt ook de logboekinformatie vinden op de pagina Monitor :
2019-05-29T19:45:25.846 [Information] Creating job...
2019-05-29T19:45:25.847 [Information] Accessing input container <inputContainer>...
2019-05-29T19:45:25.847 [Information] Adding <fileName> as a resource file...
2019-05-29T19:45:25.848 [Information] Name of output text file: <outputTxtFile>
2019-05-29T19:45:25.848 [Information] Name of output PDF file: <outputPdfFile>
2019-05-29T19:45:26.200 [Information] Adding OCR task <taskID> for <fileName> <size of fileName>...
Als u de uitvoerbestanden naar uw lokale computer wilt downloaden, gaat u naar de uitvoercontainer in uw opslagaccount. Selecteer meer opties voor het gewenste bestand en selecteer vervolgens Downloaden.
Hint
De gedownloade bestanden kunnen worden doorzocht als ze worden geopend in een PDF-lezer.
De hulpbronnen opschonen
Er worden kosten in rekening gebracht voor de pool terwijl de knooppunten actief zijn, zelfs als er geen opdrachten zijn gepland. Wanneer u de pool niet meer nodig hebt, verwijdert u deze met de volgende stappen:
- Selecteer op de pagina Pools van uw Batch-account meer opties voor uw pool.
- Selecteer verwijderen.
Wanneer u de pool verwijdert, wordt ook alle taakuitvoer op de knooppunten verwijderd. De uitvoerbestanden blijven echter aanwezig in het opslagaccount. Wanneer u dit niet meer nodig hebt, kunt u ook het Batch-account en het opslagaccount verwijderen.
Volgende stappen
Zie de voorbeelden op GitHub voor meer voorbeelden van het gebruik van de .NET-API voor het plannen en verwerken van Batch-workloads.