Források optimalizálása

Az Azure SQL Database kivételével minden forrás esetében ajánlott az aktuális particionálás használata a kiválasztott értékként. Ha minden más forrásrendszerből olvas, az adatfolyamok automatikusan egyenletesen particionálják az adatokat az adatok mérete alapján. A rendszer körülbelül 128 MB-ra hoz létre egy új partíciót. Az adatméret növekedésével a partíciók száma nő.

Az egyéni particionálás azután történik, hogy a Spark beolvassa az adatokat, és negatívan befolyásolja az adatfolyam teljesítményét. Mivel az adatok egyenletesen particionálva lesznek az olvasáskor, csak akkor ajánlott, ha először tisztában van az adatok alakjával és számosságával.

Megjegyzés:

Az olvasási sebességet a forrásrendszer átviteli sebessége korlátozhatja.

Azure SQL Database-források

Az Azure SQL Database rendelkezik egy "Forrás" particionálás nevű egyedi particionálási lehetőséggel. A forrásparticionálás engedélyezése javíthatja az Azure SQL Database olvasási idejét a forrásrendszer párhuzamos kapcsolatainak engedélyezésével. Adja meg a partíciók számát és az adatok particionálásának módját. Használjon magas számosságú partícióoszlopot. Olyan lekérdezést is megadhat, amely megfelel a forrástábla particionálási sémájának.

Tipp.

A forrásparticionálás esetében az SQL Server I/O-jának szűk keresztmetszete van. Ha túl sok partíciót ad hozzá, azzal telítheti a forrásadatbázist. A beállítás használatakor általában négy vagy öt partíció ideális.

Source partitioning

Elkülönítési szint

Az Azure SQL-forrásrendszer olvasásának elkülönítési szintje hatással van a teljesítményre. A "Nem véglegesített olvasás" lehetőség a leggyorsabb teljesítményt nyújtja, és megakadályozza az adatbázis zárolását. Az SQL-elkülönítési szintekről az elkülönítési szintek ismertetése című témakörben olvashat bővebben.

Olvasás lekérdezéssel

Az Azure SQL Database-ből táblázat vagy SQL-lekérdezés használatával olvashat. HA SQL-lekérdezést hajt végre, a lekérdezésnek be kell fejeződnie, mielőtt az átalakítás elkezdődhet. Az SQL-lekérdezések hasznosak lehetnek olyan műveletek leküldéséhez, amelyek gyorsabban hajthatók végre, és csökkenthetik az SQL Serverről beolvasott adatok mennyiségét, például Standard kiadás LECT, WHERE és JOIN utasításokat. A műveletek leküldésekor nem tudja nyomon követni az átalakítások menetét és teljesítményét, mielőtt az adatok bekerülnek az adatfolyamba.

Azure Synapse Analytics-források

Az Azure Synapse Analytics használata esetén a forrásbeállítások között létezik az Előkészítés engedélyezése nevű beállítás. Ez lehetővé teszi, hogy a szolgáltatás a Synapse használatával Stagingolvasson, ami jelentősen javítja az olvasási teljesítményt a legteljesítményesebb tömeges betöltési képesség, például a CETAS és a COPY parancs használatával. Az Staging engedélyezéshez meg kell adnia egy Azure Blob Storage- vagy Azure Data Lake Storage Gen2-előkészítési helyet az adatfolyam-tevékenység beállításai között.

Enable staging

Fájlalapú források

Parquet és tagolt szöveg

Bár az adatfolyamok különböző fájltípusokat támogatnak, a Spark-natív parquet formátum ajánlott az optimális olvasási és írási idő érdekében.

Ha ugyanazt az adatfolyamot futtatja egy fájlkészleten, javasoljuk, hogy egy mappából olvasson, helyettesítő karaktereket használjon, vagy olvasson a fájlok listájából. Egyetlen adatfolyam-tevékenységfuttatással az összes fájl feldolgozható kötegben. A beállítások konfigurálásáról további információt az Azure Blob Storage-összekötő dokumentációjának Forrásátalakítási szakaszában talál.

Ha lehetséges, ne használja a For-Each tevékenységet az adatfolyamok fájlokon való futtatására. Ez azt eredményezi, hogy az egyes for-eachok minden iterációja saját Spark-fürtöt hoz létre, ami gyakran nem szükséges, és költséges lehet.

Beágyazott adathalmazok és megosztott adathalmazok

Az ADF- és Synapse-adatkészletek a gyárakban és munkaterületeken megosztott erőforrások. Ha azonban nagy számú forrásmappát és fájlt olvas elhatárolt szöveggel és JSON-forrásokkal, javíthatja az adatfolyam-fájlok felderítésének teljesítményét a "Felhasználó által előrejelzett séma" lehetőség beállításával a Projection | Sémabeállítások párbeszédpanel. Ez a beállítás kikapcsolja az ADF alapértelmezett séma automatikus észlelését, és jelentősen javítja a fájlfelderítés teljesítményét. A beállítás megadása előtt mindenképpen importálja a vetítést, hogy az ADF rendelkezik meglévő vetületi sémával. Ez a beállítás nem működik a sémaeltolódással.

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