Az Azure Functions használatával kezelheti a dedikált SQL-készlet (korábbi nevén SQL DW) számítási erőforrásait az Azure Synapse Analyticsben

Ez az oktatóanyag az Azure Functions használatával kezeli egy dedikált SQL-készlet (korábbi nevén SQL DW) számítási erőforrásait az Azure Synapse Analyticsben.

Ha dedikált SQL-készlettel (korábban SQL DW) rendelkező Azure-függvényalkalmazást szeretne használni, létre kell hoznia egy egyszerű szolgáltatásfiókot. A szolgáltatásnév-fióknak közreműködői hozzáférésre van szüksége a dedikált SQL-készlet (korábbi nevén SQL DW) példányával megegyező előfizetésben.

Időzítőalapú skálázás üzembe helyezése Azure Resource Manager-sablonnal

A sablon üzembe helyezéséhez a következő információkra van szüksége:

  • Annak az erőforráscsoportnak a neve, amelyben a dedikált SQL-készlet (korábban SQL DW)-példány található
  • Annak a kiszolgálónak a neve, amelyben a dedikált SQL-készlet (korábban SQL DW)-példány található
  • A dedikált SQL-készlet (korábban SQL DW) példányának neve
  • A Microsoft Entra-azonosító bérlőazonosítója (címtárazonosítója)
  • Subscription ID
  • Egyszerű szolgáltatás alkalmazásazonosítója
  • Egyszerű szolgáltatás titkos kulcsa

A fenti információk birtokában helyezze üzembe ezt a sablont:

Image showing a button labeled

A sablon üzembe helyezése után három új erőforrást kell találnia: egy ingyenes Azure-alkalmazás szolgáltatáscsomagot, egy használatalapú függvényalkalmazás-csomagot, valamint egy tárfiókot, amely kezeli a naplózást és a műveleti üzenetsort. Olvassa el a többi szakaszt, ha meg szeretné tudni, hogyan módosíthatja az üzembe helyezett függvényeket az igényeinek megfelelően.

A méretezési művelet időpontjának módosítása

  1. Navigáljon a Függvényalkalmazás szolgáltatást. Ha az alapértelmezett értékekkel helyezte üzembe a sablont, a szolgáltatás neve DWOperations. A Függvényalkalmazás megnyitása után megfigyelheti, hogy a rendszer öt függvényt helyezett üzembe a Függvényalkalmazás szolgáltatásban.

    Functions that are deployed with template

  2. Válassza a DWScaleDownTrigger vagy a DWScaleUpTrigger lehetőséget a vertikális fel- vagy leskálázáshoz. A legördülő menüben válassza az Integrálás lehetőséget.

    Select Integrate for function

  3. Jelenleg a %ScaleDownTime% vagy a %ScaleUpTime% értéknek kell megjelennie. Ezek az értékek azt jelzik, hogy az ütemezés az Alkalmazásbeállításokban beállított értékeken alapul. Egyelőre figyelmen kívül hagyhatja ezt az értéket, és a következő lépések alapján módosíthatja az ütemezést a kívánt időpontra.

  4. Az ütemezési területen adja hozzá azt a CRON-kifejezést, amelyet tükrözni szeretne, hogy milyen gyakran szeretné felskálázni az Azure Synapse Analyticset.

    Change function schedule

    A schedule értéke egy CRON-kifejezés, amely az alábbi hat mezőt tartalmazza:

    {second} {minute} {hour} {day} {month} {day-of-week}
    

    A "0 30 9 * * 1-5" például minden hétköznap 9:30-kor egy eseményindítót tükrözne. További információért tekintse meg az Azure Functions ütemezési példákat ismertető leírását.

A számítási szint módosítása

  1. Navigáljon a Függvényalkalmazás szolgáltatást. Ha az alapértelmezett értékekkel helyezte üzembe a sablont, a szolgáltatás neve DWOperations. A Függvényalkalmazás megnyitása után megfigyelheti, hogy a rendszer öt függvényt helyezett üzembe a Függvényalkalmazás szolgáltatásban.

  2. Válassza a DWScaleDownTrigger vagy a DWScaleUpTrigger lehetőséget a számítási érték fel- vagy leskálázásához. A függvények kiválasztásakor az ablaktáblán az index.js fájlnak kell megjelennie.

    Change function trigger compute level

  3. Módosítsa a ServiceLevelObjective értékét a kívánt szintre, és válassza a Mentés lehetőséget. A ServiceLevelObjective az a számítási szint, amellyel az adattárházpéldány az Integrálás szakaszban meghatározott ütemezés alapján skálázni fog.

Szüneteltetés vagy folytatás használata méretezés helyett

Alapértelmezés szerint jelenleg a DWScaleDownTrigger és a DWScaleUpTrigger függvények vannak bekapcsolva. Ha a felfüggesztés és a folytatás funkciót szeretné használni helyettük, engedélyezze a DWPauseTrigger vagy a DWResumeTrigger függvényt.

  1. Lépjen a Függvények ablaktáblára.

    Functions pane

  2. Válassza ki a tolókapcsolót az engedélyezni kívánt megfelelő eseményindítókhoz.

  3. Lépjen az adott eseményindító Integrálás lapjára az ütemezés módosításához.

    Megjegyzés:

    A skálázási eseményindítók és a szüneteltetési/folytatási eseményindítók közötti funkcionális különbség az üzenetsorba küldött üzenet. További információ: Új triggerfüggvény hozzáadása.

Új eseményindító függvény hozzáadása

A sablon jelenleg csak két méretezési függvényt tartalmaz. Ezekkel a függvényekkel egy nap alatt csak egyszer és egyszer skálázhat le. A részletesebb szabályozáshoz, például a napi többszöri skálázáshoz vagy a hétvégek eltérő skálázási viselkedéséhez egy másik eseményindítót kell hozzáadnia.

  1. Hozzon létre egy új üres függvényt. A függvénysablon panel megjelenítéséhez válassza a + Függvények helye melletti gombot.

    Screenshot that shows the

  2. A Nyelv területen válassza a JavaScript, majd a TimerTrigger lehetőséget.

    Create new function

  3. Nevezze el a függvényt, és állítsa be az ütemezést. A kép azt mutatja be, hogyan lehet függvényeket elindítani minden szombaton éjfélkor (pénteken késő este).

    Scale down Saturday

  4. Másolja ki az index.js tartalmát a többi eseményindító függvény egyikéből.

    Copy index js

  5. Állítsa be a műveleti változót a kívánt viselkedésre az alábbiak szerint:

    // Resume the dedicated SQL pool (formerly SQL DW) instance
    var operation = {
        "operationType": "ResumeDw"
    }
    
    // Pause the dedicated SQL pool (formerly SQL DW) instance
    var operation = {
        "operationType": "PauseDw"
    }
    
    // Scale the dedicated SQL pool (formerly SQL DW)l instance to DW600c
    var operation = {
        "operationType": "ScaleDw",
        "ServiceLevelObjective": "DW600c"
    }
    

Összetett ütemezés

Ez a szakasz röviden bemutatja, hogy mi szükséges a szüneteltetési, folytatási és skálázási képességek összetettebb ütemezéséhez.

1\. példa

Napi skálázás reggel 8:00-tól DW600c-ig, és 20:00-kor leskálázás DW200c-ig.

Function Schedule Operation
1. függvény 0 0 8 * * * var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW600c"}
2. függvény 0 0 20 * * * var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW200c"}

2\. példa

Napi skálázás 8:00-tól DW1000c-ig, egyszer leskálázás DW600-ra 16:00-kor, és 10:00-tól DW200c-ig.

Function Schedule Operation
1. függvény 0 0 8 * * * var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW1000c"}
2. függvény 0 0 16 * * * var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW600c"}
3. függvény 0 0 22 * * * var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW200c"}

3. példa

Vertikális felskálázás reggel 8:00-tól DW1000c-ig, skálázás egyszer DW600c-ra hétköznapokon 16:00-kor. Szüneteltetés péntek 23:00-kor, folytatás hétfő reggel 7:00-kor.

Function Schedule Operation
1. függvény 0 0 8 * * 1-5 var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW1000c"}
2. függvény 0 0 16 * * 1-5 var operation = {"operationType": "ScaleDw", "ServiceLevelObjective": "DW600c"}
3. függvény 0 0 23 * * 5 var operation = {"operationType": "PauseDw"}
4. függvény 0 0 7 * * 1 var operation = {"operationType": "ResumeDw"}

Következő lépések

További információ az Azure Functions időzítő-eseményindítójáról.

Tekintse meg a dedikált SQL-készlet (korábbi nevén SQL DW) mintaadattárát.