Oktatóanyag: Batch-feladat aktiválása Azure Functions

Ebben az oktatóanyagban megtudhatja, hogyan aktiválhat Batch-feladatokat Azure Functions használatával. Ez a cikk egy példát mutat be, amely egy Azure Storage-blobtárolóhoz hozzáadott dokumentumokat alkalmaz az optikai karakterfelismerésre (OCR) az Azure Batch használatával. Az OCR-feldolgozás egyszerűsítése érdekében ez a példa egy Azure-függvényt konfigurál, amely Batch OCR-feladatot futtat minden alkalommal, amikor egy fájlt hozzáad a blobtárolóhoz. Az alábbiak végrehajtásának módját ismerheti meg:

  • A Azure Portal használatával készleteket és feladatokat hozhat létre.
  • Blobtárolók és közös hozzáférésű jogosultságkód (SAS) létrehozása.
  • Hozzon létre egy blob által aktivált Azure-függvényt.
  • Bemeneti fájlok feltöltése a Tárolóba.
  • Tevékenység végrehajtásának figyelése.
  • Kimeneti fájlok lekérése.

Előfeltételek

Bejelentkezés az Azure-ba

Jelentkezzen be az Azure Portalra.

Batch-készlet és Batch-feladat létrehozása a Azure Portal

Ebben a szakaszban a Azure Portal használatával hozza létre az OCR-feladatokat futtató Batch-készletet és Batch-feladatot.

Készlet létrehozása

  1. Jelentkezzen be a Azure Portal az Azure-beli hitelesítő adataival.

  2. Hozzon létre egy készletet a bal oldali navigációs sáv Készletek elemének, majd a keresési űrlap fölött található Hozzáadás gombra kattintva.

    Képernyőkép egy Batch-fiók Készletek lapjáról, amely kiemeli a Hozzáadás gombot.

    1. Adjon meg egy készletazonosítót. Ez a példa a készlet ocr-poolnevét tartalmazza.
    2. Válassza a canonical lehetőséget Közzétevőként.
    3. Válassza a 0001-com-ubuntu-server-jammyelemet ajánlatként.
    4. Termékváltozatként válassza a 22_04-lts elemet.
    5. Válassza Standard_F2s_v2 - 2 vCPUs, 2 GB Memory ki a virtuális gép méretét a Csomópontméret szakaszban.
    6. Állítsa a Skálázás szakasz Mód értékét Rögzített értékre, és adja meg a 3 értéket a dedikált célcsomópontokhoz.
    7. Állítsa a Start tevékenység beállítást Az indítási tevékenység engedélyezése értékre, és írja be a parancsot /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" a parancssorba. Győződjön meg arról, hogy a Szintszintetkészlet autouserként állítja be, Rendszergazda, amely lehetővé teszi, hogy a kezdő tevékenységek a parancsokat is tartalmazzák a paranccsalsudo.
    8. Válassza az OK lehetőséget.

Feladat létrehozása

  1. Hozzon létre egy feladatot a készleten a bal oldali navigációs sáv Feladatok elemének kiválasztásával, majd válassza a Keresési űrlap fölött található Hozzáadás gombot.
    1. Adjon meg egy feladatazonosítót. Ez a példa a következőt használja: ocr-job.
    2. Válassza az ocr-poolAktuális készlet lehetőséget, vagy a készlethez választott nevet.
    3. Válassza az OK lehetőséget.

Blobtárolók létrehozása

Itt blobtárolókat hoz létre, amelyek az OCR Batch-feladat bemeneti és kimeneti fájljait tárolják. Ebben a példában a bemeneti tároló neve input és az az, ahol a rendszer először feltölti az OCR nélküli összes dokumentumot feldolgozásra. A kimeneti tároló neve output és a Batch-feladat a feldolgozott dokumentumok ocr használatával történő írásának helye.

  1. Keresse meg és válassza ki a Storage-fiókokat a Azure Portal.

  2. Válassza ki a Batch-fiókhoz társított tárfiókot.

  3. A bal oldali navigációs sávon válassza a Tárolók elemet, és hozzon létre két blobtárolót (egyet a bemeneti fájlokhoz, egyet a kimeneti fájlokhoz) a Blobtároló létrehozása című szakasz lépéseit követve.

  4. A kimeneti tároló kiválasztásával hozzon létre egy közös hozzáférésű jogosultságkódot a kimeneti tárolóhoz, majd a Megosztott hozzáférési jogkivonatok lapon válassza az Írás lehetőséget az Engedélyek legördülő menüben. Nincs szükség más engedélyekre.

  5. Válassza az SAS-jogkivonat és URL-cím létrehozása lehetőséget, majd másolja ki a Blob SAS URL-címét a függvény későbbi használatához.

    Képernyőkép a Megosztott hozzáférési jogkivonatok lapról, amely kiemeli az Engedélyek legördülő menüt, valamint az SAS-jogkivonat és URL-cím létrehozása gombot.

Azure-függvény létrehozása

Ebben a szakaszban hozza létre azt az Azure-függvényt, amely aktiválja az OCR Batch-feladatot, amikor feltölt egy fájlt a bemeneti tárolóba.

  1. A függvény létrehozásához kövesse az Azure Blob Storage által aktivált függvény létrehozása című témakör lépéseit.

    1. Futtatókörnyezeti verem esetén válassza a .NET lehetőséget. Ez a példafüggvény a C# használatával használja a Batch .NET SDK előnyeit.
    2. A Storage lapon használja ugyanazt a tárfiókot, amelyet a Batch-fiókjához csatolt.
    3. Válassza a Véleményezés + Létrehozás lehetőséget>.

    Az alábbi képernyőképen a Függvényalkalmazás létrehozása lap az Alapok lapon, példaadatok használatával.

    Képernyőkép a Függvényalkalmazás létrehozása lapról az Alapok lapon, példaadatok használatával.

  2. A függvényben válassza a Függvények lehetőséget a bal oldali navigációs sávon, majd válassza a Létrehozás lehetőséget.

  3. A Függvény létrehozása panelen válassza Azure Blob Storage eseményindítót.

  4. Adja meg a függvény nevét az Új függvény mezőben. Ebben a példában a név OcrTrigger. Adja meg az elérési utat a következőként: input/{name}, ahol a blobtároló nevében adja meg a bemenetet.

  5. Válassza a Létrehozás lehetőséget.

    Képernyőkép a Függvény létrehozása panelről, amely kiemeli a Azure Blob Storage eseményindítót, valamint az Új függvény és elérési út mezőket.

  6. A blob által aktivált függvény létrehozása után válassza a Kód + Teszt lehetőséget. Használja az és function.proj a run.csx GitHubot a függvényben. function.proj alapértelmezés szerint nem létezik, ezért a Feltöltés gombra kattintva töltse fel a fejlesztési munkaterületre.

    • run.csx akkor fut, ha új blobot ad hozzá a bemeneti blobtárolóhoz.
    • function.proj felsorolja a függvénykódban lévő külső kódtárakat, például a Batch .NET SDK-t.
  7. Módosítsa a fájl függvényében lévő Run() változók helyőrző értékeit a Batch és a run.csx tár hitelesítő adatainak megfelelően. A Batch- és tárfiók hitelesítő adatait a Batch- és tárfiók Kulcsok szakaszának Azure Portal találja.

A függvény aktiválása és az eredmények lekérése

Töltse fel a Beolvasott fájlok bármelyikét vagy mindegyikét a GitHub könyvtárából a input_files bemeneti tárolóba.

A függvényt Azure Portal a függvény Kód + Teszt oldalán tesztelheti.

  1. Válassza a Tesztelés/futtatás lehetőséget a Kód + Teszt lapon.
  2. Írja be a bemeneti tároló elérési útját a Törzs mezőbe a Bemenet lapon.
  3. Válassza a Futtatás lehetőséget.

Néhány másodperc elteltével az alkalmazott OCR-fájl hozzá lesz adva a kimeneti tárolóhoz. Naplóinformációk kimenetei az alsó ablakba. A fájl ezután látható és lekérthető a Storage Explorer.

A naplóadatokat a Monitor lapon is megtalálhatja:

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>...

A kimeneti fájlok helyi gépre való letöltéséhez nyissa meg a tárfiók kimeneti tárolóját. Válassza ki a kívánt fájl további beállításait, majd válassza a Letöltés lehetőséget.

Tipp

A letöltött fájlok kereshetők, ha PDF-olvasóban vannak megnyitva.

Az erőforrások eltávolítása

A készletért akkor is díjat kell fizetnie, ha a csomópontok futnak, még akkor is, ha nincsenek ütemezve feladatok. Ha már nincs szüksége a készletre, törölje az alábbi lépésekkel:

  1. A Batch-fiók Készletek lapján válassza ki a készlet további beállításait.
  2. Válassza a Törlés elemet.

A készlet törlésekor a rendszer a csomópont összes tevékenységének kimenetét is törli. A kimeneti fájlok azonban megmaradnak a Storage-fiókban. Ha már nincs rá szükség, törölheti a Batch-fiókot és a tárfiókot is.

Következő lépések

Batch-számításifeladatok .NET API használatával történő ütemezésére és feldolgozására a GitHub mintáiban találhat további példákat.