Az Azure Integration Runtime teljesítményének optimalizálása

Az adatfolyamok futtatáskor felpörögő Spark-fürtökön futnak. A használt fürt konfigurációja a tevékenység integrációs moduljában (IR) van definiálva. Az integrációs futtatókörnyezet meghatározásakor három teljesítménybeli szempontot kell figyelembe venni: a fürt típusát, a fürt méretét és az élettartamot.

Az integrációs modul létrehozásáról további információt az Integrációs modul című témakörben talál.

Az adatfolyam-integrációs futtatókörnyezetek használatának legegyszerűbb módja a kis, közepes vagy nagy méretű számítási méret kiválasztása. Tekintse meg az alábbi méretek fürtkonfigurációinak leképezéseit.

Fürt mérete

Az adatfolyamok az adatfeldolgozást egy Spark-fürt különböző magjai között osztják el, hogy párhuzamosan hajtsa végre a műveleteket. A több maggal rendelkező Spark-fürtök növelik a számítási környezet magjainak számát. További magok növelik az adatfolyam feldolgozási teljesítményét. A fürt méretének növelése gyakran egyszerű módszer a feldolgozási idő csökkentésére.

Az alapértelmezett fürtméret négy illesztőmag és négy feldolgozómag (kicsi). További adatok feldolgozásakor nagyobb fürtök használata javasolt. Az alábbiakban a lehetséges méretezési beállításokat találja:

Feldolgozó magok Illesztőprogram-magok Összes mag Jegyzetek
4 4 8 Small
8 8 16 Közepes
16 16 32 Nagy
32 16 48
64 16 80
128 16 144
256 16 272

Az adatfolyamok ára virtuális mag-óra, ami azt jelenti, hogy mind a fürt mérete, mind a végrehajtási idő tényező ebbe bele van számítva. A vertikális felskálázáskor a fürt percenkénti költsége nő, de a teljes idő csökken.

Tipp.

A fürt méretének felső határa befolyásolja az adatfolyam teljesítményét. Az adatok méretétől függően van egy pont, ahol a fürt méretének növelése leállítja a teljesítmény növelését. Ha például több maggal rendelkezik, mint adatpartíciókkal, a további magok hozzáadása nem segít. Az ajánlott eljárás a kis méretű és vertikális felskálázás, hogy megfeleljen a teljesítmény igényeinek.

Egyéni shuffle partíció

Az adatfolyam partíciókra osztja az adatokat, és különböző folyamatok használatával alakítja át őket. Ha egy partíció adatmérete nagyobb, mint amennyit a folyamat tárolhat a memóriában, a folyamat OOM(memóriahiányos) hibákkal meghiúsul. Ha az adatfolyam nagy mennyiségű adatot tartalmaz illesztésekkel/összesítésekkel, érdemes lehet növekményes módon módosítani az shuffle partíciókat. Az OOM-hibák elkerülése érdekében 50-től 2000-ig állíthatja be. Az adatfolyam-futtatókörnyezetben található egyéni számítási tulajdonságok a számítási követelmények szabályozásának egyik módja. A tulajdonság neve shuffle partíció, és egész szám típusú. Ezt a testreszabást csak ismert forgatókönyvekben szabad használni, különben szükségtelen adatfolyam-hibákat okozhat.

Az shuffle partíciók növelése közben győződjön meg arról, hogy az adatok jól elosztva találhatók. Egy hozzávetőleges szám partíciónként körülbelül 1,5 GB adatnak kell rendelkeznie. Ha az adatok eltúlzottak, a "Shuffle partíciók" növelése nem lesz hasznos. Ha például 500 GB adat áll rendelkezésére, 400 és 500 közötti értéknek kell működnie. A partíciók keverésének alapértelmezett határa 200, ami körülbelül 300 GB adat esetén jól működik.

  1. Az ADF-portál Kezelés területén válassza ki az egyéni integrációs futási időt, és lépjen a szerkesztési módba.
  2. Az adatfolyam-futtatási idő lapon lépjen a Számítási egyéni tulajdonságok szakaszra.
  3. Válassza az Shuffle partíciókat a Tulajdonságnév területen, a választott bemeneti értéket(például 250, 500 stb.).

Ugyanezt megteheti úgy is, hogy szerkeszti a futtatókörnyezet JSON-fájlját, ha hozzáad egy tulajdonságnevet és értéket tartalmazó tömböt egy meglévő tulajdonság, például a törlési tulajdonság után.

Élettartam

Alapértelmezés szerint minden adatfolyam-tevékenység létrehoz egy új Spark-fürtöt az Azure IR-konfiguráció alapján. A hideg fürt indítási ideje néhány percet vesz igénybe, és az adatfeldolgozás nem indulhat el, amíg be nem fejeződik. Ha a folyamatok több szekvenciális adatfolyamot tartalmaznak, engedélyezheti az élettartam (TTL) értékét. Az élő érték megadásával a fürt a végrehajtás befejeződése után egy bizonyos ideig életben marad. Ha egy új feladat a TTL ideje alatt kezdi el használni az integrációs modult, az újra felhasználja a meglévő fürtöt, és az indítási idő jelentősen csökken. A második feladat befejeződése után a fürt ismét életben marad a TTL-idő alatt.

Ha azonban az adatfolyamok többsége párhuzamosan fut, nem ajánlott engedélyezni a TTL-t az adott tevékenységekhez használt integrációs modulhoz. Egyszerre csak egy feladat futtatható egyetlen fürtön. Ha van elérhető fürt, de két adatfolyam indul el, csak egy fogja használni az élő fürtöt. A második feladat elindítja a saját elkülönített fürtjét.

Feljegyzés

Az automatikus feloldási integrációs modul (alapértelmezett) használatakor az élettartam nem érhető el.

További Adatfolyam teljesítményre vonatkozó cikkek: