Copy tevékenység teljesítményoptimalizálási funkciók
A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
Ez a cikk az Azure Data Factoryben és a Synapse-folyamatokban használható másolási tevékenység teljesítményoptimalizálási funkcióit ismerteti.
Teljesítményfunkciók konfigurálása felhasználói felülettel
Amikor kiválaszt egy Copy tevékenység a folyamatszerkesztő vásznán, és a vászon alatti tevékenységkonfigurációs területen a Beállítások fülre kattint, az összes teljesítményfunkció konfigurálására vonatkozó beállításokat az alábbiakban találja.
Adatintegrációs egységek
A adatintegráció egység olyan mérték, amely egyetlen egység teljesítményét (a processzor, a memória és a hálózati erőforrás-foglalás kombinációját) jelöli a szolgáltatáson belül. adatintegráció egység csak a következőre vonatkozik:Azure-integrációs modul, de nem saját üzemeltetésű integrációs modul.
A másolási tevékenységek futtatásának engedélyezése engedélyezett DIU-k száma 4 és 256 között van. Ha nincs megadva, vagy a felhasználói felületen az "Automatikus" lehetőséget választja, a szolgáltatás dinamikusan alkalmazza az optimális DIU-beállítást a forrás-fogadó pár és az adatminta alapján. Az alábbi táblázat a különböző másolási forgatókönyvek támogatott DIU-tartományait és alapértelmezett viselkedését sorolja fel:
Másolási forgatókönyv | Támogatott DIU-tartomány | Szolgáltatás által meghatározott alapértelmezett DIU-k |
---|---|---|
Fájltárolók között | - Másolás egyetlen fájlból vagy fájlba: 4 - Másolás több fájlból és fájlba: 4-256 a fájlok számától és méretétől függően Ha például egy 4 nagy fájlt tartalmazó mappából másol adatokat, és úgy dönt, hogy megőrzi a hierarchiát, a maximálisan érvényes DIU 16; ha úgy dönt, hogy egyesít egy fájlt, a maximális érvényes DIU 4. |
A fájlok számától és méretétől függően 4 és 32 között |
Fájltárolóból nem fájltárolóba | - Másolás egyetlen fájlból: 4 - Másolás több fájlból: 4-256 a fájlok számától és méretétől függően Ha például egy 4 nagy fájlt tartalmazó mappából másol adatokat, a maximális effektív DIU 16. |
- Másolás az Azure SQL Database-be vagy az Azure Cosmos DB-be: 4 és 16 között a fogadószinttől (DTU-k/kérelemegységek) és a forrásfájl-mintától függően - Másolás az Azure Synapse Analyticsbe a PolyBase vagy a COPY utasítás használatával: 2 - Egyéb forgatókönyv: 4 |
Nem fájltárolóból fájltárolóba | - Másolás partíciós lehetőségekkel kompatibilis adattárakból (beleértve az Azure Database for PostgreSQL-t, az Azure SQL Database-t, a felügyelt Azure SQL-példányt, az Azure Synapse Analyticset, az Oracle-t, a Netezza-t, az SQL Servert és a Teradata-t): 4–256, amikor egy mappába ír, 4 pedig egyetlen fájlba. A forrásadatpartíciónkénti megjegyzés legfeljebb 4 DIU-t használhat. - Egyéb forgatókönyvek: 4 |
- Másolás REST-ből vagy HTTP-ből: 1 - Másolás az Amazon Redshiftből a UNLOAD használatával: 4 - Egyéb forgatókönyv: 4 |
Nem fájltárolók között | - Másolás partíciós lehetőségekkel kompatibilis adattárakból (beleértve az Azure Database for PostgreSQL-t, az Azure SQL Database-t, a felügyelt Azure SQL-példányt, az Azure Synapse Analyticset, az Oracle-t, a Netezza-t, az SQL Servert és a Teradata-t): 4–256, amikor egy mappába ír, 4 pedig egyetlen fájlba. A forrásadatpartíciónkénti megjegyzés legfeljebb 4 DIU-t használhat. - Egyéb forgatókönyvek: 4 |
- Másolás REST-ből vagy HTTP-ből: 1 - Egyéb forgatókönyv: 4 |
A másolási tevékenység figyelési nézetben vagy tevékenységkimenetben az egyes másolásokhoz használt DIU-k láthatók. További információ: Copy tevékenység monitorozás. Az alapértelmezett érték felülbírálásához adja meg a tulajdonság értékét az dataIntegrationUnits
alábbiak szerint. A másolási művelet által futtatáskor használt DIU-k tényleges száma az adatmintától függően egyenlő vagy kisebb, mint a konfigurált érték.
A felhasznált DIU-k száma * másolás időtartama * egységár/DIU-óra. Az aktuális árakat itt találja. A helyi pénznem és a külön diszkontálás előfizetés-típusonként alkalmazható.
Példa:
"activities":[
{
"name": "Sample copy activity",
"type": "Copy",
"inputs": [...],
"outputs": [...],
"typeProperties": {
"source": {
"type": "BlobSource",
},
"sink": {
"type": "AzureDataLakeStoreSink"
},
"dataIntegrationUnits": 128
}
}
]
Saját üzemeltetésű integrációs modul skálázhatósága
Ha nagyobb átviteli sebességet szeretne elérni, vertikálisan felskálázhatja vagy felskálázhatja a saját üzemeltetésű integrációs modult:
- Ha a saját üzemeltetésű INTEGRÁCIÓS csomópont processzora és rendelkezésre álló memóriája nincs teljesen kihasználva, de az egyidejű feladatok végrehajtása eléri a korlátot, a csomóponton futtatható egyidejű feladatok számának növelésével skálázhatja fel a skálázást. Itt talál útmutatást.
- Ha viszont a processzor magas a saját üzemeltetésű integrációs modul csomópontján, vagy kevés a rendelkezésre álló memória, hozzáadhat egy új csomópontot a terhelés több csomópontra való felskálázásához. Itt talál útmutatást.
Vegye figyelembe, hogy a következő forgatókönyvekben az egy másolási tevékenység végrehajtása több saját üzemeltetésű integrációs modul csomópontot is használhat:
- Adatok másolása fájlalapú tárolókból a fájlok számától és méretétől függően.
- Az adatpartíciók számától függően másolhatja az adatokat a partíció-beállításokkal kompatibilis adattárból (beleértve az Azure SQL Database-t, a felügyelt Azure SQL-példányt, az Azure Synapse Analyticset, az Oracle-t, a Netezza-t, az SAP HANA-t, az SAP Open Hubot, az SAP Table-t, az SQL Servert és a Teradata-t).
Párhuzamos másolás
A párhuzamos másolást (parallelCopies
a tulajdonságot a Copy tevékenység JSON-definíciójában, vagy Degree of parallelism
a Copy tevékenység tulajdonságainak Beállítások lapján a felhasználói felületen) állíthatja be a másolási tevékenységre, hogy jelezze a másolási tevékenység párhuzamosságát. Ezt a tulajdonságot a forrásból beolvasott vagy a fogadó adattárakba párhuzamosan író másolási tevékenységen belüli szálak maximális számaként tekintheti.
A párhuzamos másolat ortogonális adatintegráció egységekhez vagy helyi integrációs modul csomópontokhoz. A program az összes DIU-n vagy saját üzemeltetésű integrációs modulcsomóponton megszámolja.
Minden másolási tevékenység futtatásakor a szolgáltatás alapértelmezés szerint dinamikusan alkalmazza az optimális párhuzamos másolási beállítást a forrás-fogadó pár és az adatminta alapján.
Tipp.
A párhuzamos másolás alapértelmezett viselkedése általában a legjobb átviteli sebességet biztosítja, amelyet a szolgáltatás automatikusan határoz meg a forrás-fogadó pár, az adatminta és a DIU-k száma vagy a saját üzemeltetésű integrációs modul PROCESSZOR-/memória-/csomópontszáma alapján. Tekintse meg a másolási tevékenység teljesítményével kapcsolatos hibaelhárítást a párhuzamos másolás hangolásának időpontjával kapcsolatban.
Az alábbi táblázat a párhuzamos másolási viselkedést sorolja fel:
Másolási forgatókönyv | Párhuzamos másolási viselkedés |
---|---|
Fájltárolók között | parallelCopies a fájl szintjén határozza meg a párhuzamosságot. Az egyes fájlokon belüli adattömbelés automatikusan és transzparensen történik. Úgy tervezték, hogy egy adott adattártípushoz a legmegfelelőbb adattömbméretet használja az adatok párhuzamos betöltéséhez. A futtatáskor használt párhuzamos másolási tevékenység tényleges száma nem több, mint a meglévő fájlok száma. Ha a másolási viselkedés a MergeFile fájl fogadóba kerül, a másolási tevékenység nem tudja kihasználni a fájlszintű párhuzamosságot. |
Fájltárolóból nem fájltárolóba | - Ha adatokat másol az Azure SQL Database-be vagy az Azure Cosmos DB-be, az alapértelmezett párhuzamos másolás a fogadószinttől (DTU-k/kérelemegységek száma) is függ. – Ha adatokat másol az Azure Tablebe, az alapértelmezett párhuzamos másolás 4. |
Nem fájltárolóból fájltárolóba | - Ha partíciós lehetőségekkel kompatibilis adattárból másol adatokat (beleértve az Azure SQL Database-t, a felügyelt Azure SQL-példányt, az Azure Synapse Analyticset, az Oracle-hez készült Oracle-t, a Netezza-t, az SAP HANA-t, az SAP Open Hubot, az SAP Table-t, az SQL Servert, az SQL Serverhez készült Amazon RDS-t és a Teradata-t), az alapértelmezett párhuzamos másolás 4. A futtatáskor használt párhuzamos másolási tevékenység tényleges száma nem nagyobb, mint a meglévő adatpartíciók száma. Ha saját üzemeltetésű integrációs modult használ, és az Azure Blob/ADLS Gen2-be másol, vegye figyelembe, hogy a maximális hatékony párhuzamos másolás 4 vagy 5 integrációs csomópontonként. – Más esetekben a párhuzamos másolás nem lép érvénybe. Még ha a párhuzamosság is meg van adva, a rendszer nem alkalmazza. |
Nem fájltárolók között | - Ha adatokat másol az Azure SQL Database-be vagy az Azure Cosmos DB-be, az alapértelmezett párhuzamos másolás a fogadószinttől (DTU-k/kérelemegységek száma) is függ. - Ha partíciós lehetőségekkel kompatibilis adattárból másol adatokat (beleértve az Azure SQL Database-t, a felügyelt Azure SQL-példányt, az Azure Synapse Analyticset, az Oracle-hez készült Oracle-t, a Netezza-t, az SAP HANA-t, az SAP Open Hubot, az SAP Table-t, az SQL Servert, az SQL Serverhez készült Amazon RDS-t és a Teradata-t), az alapértelmezett párhuzamos másolás 4. – Ha adatokat másol az Azure Tablebe, az alapértelmezett párhuzamos másolás 4. |
Az adattárakat üzemeltető gépek terhelésének szabályozásához vagy a másolási teljesítmény finomhangolásához felülbírálhatja az alapértelmezett értéket, és megadhatja a parallelCopies
tulajdonság értékét. Az értéknek 1-nél nagyobb vagy egyenlő egész számnak kell lennie. Futásidőben a másolási tevékenység a legjobb teljesítmény érdekében a beállított értéknél kisebb vagy egyenlő értéket használ.
A tulajdonság értékének parallelCopies
megadásakor vegye figyelembe a forrásra és a fogadó adattárakra vonatkozó terhelésnövekedést. Vegye figyelembe a saját üzemeltetésű integrációs futtatókörnyezet terhelésének növelését is, ha a másolási tevékenységet támogatja. Ez a terhelésnövekedés különösen akkor fordul elő, ha ugyanazon adattáron futó tevékenységek több tevékenységével vagy egyidejű futtatásával rendelkezik. Ha azt tapasztalja, hogy az adattár vagy a saját üzemeltetésű integrációs modul túlterhelt a terhelés miatt, csökkentse az értéket a parallelCopies
terhelés csökkentése érdekében.
Példa:
"activities":[
{
"name": "Sample copy activity",
"type": "Copy",
"inputs": [...],
"outputs": [...],
"typeProperties": {
"source": {
"type": "BlobSource",
},
"sink": {
"type": "AzureDataLakeStoreSink"
},
"parallelCopies": 32
}
}
]
Szakaszos másolat
Amikor adatokat másol egy forrásadattárból egy fogadó adattárba, dönthet úgy, hogy az Azure Blob Storage-t vagy az Azure Data Lake Storage Gen2-t ideiglenes átmeneti tárolóként használja. Az előkészítés különösen hasznos a következő esetekben:
- Különböző adattárakból szeretne adatokat beemészteni az Azure Synapse Analyticsbe a PolyBase-en keresztül, adatokat szeretne másolni a Snowflake-ből vagy a Snowflake-be, vagy az Amazon Redshift/HDFS-ből származó adatokat megfelelően betölteni. További részletek:
- A vállalati informatikai szabályzatok miatt nem szeretné megnyitni a tűzfalon a 80-at és a 443-at kivéve a portokat. Ha például adatokat másol egy helyszíni adattárból egy Azure SQL Database-be vagy egy Azure Synapse Analyticsbe, aktiválnia kell a kimenő TCP-kommunikációt az 1433-as porton a Windows tűzfal és a vállalati tűzfal számára is. Ebben a forgatókönyvben a szakaszos másolás kihasználhatja a saját üzemeltetésű integrációs modul előnyeit, hogy először az adatokat egy átmeneti tárolóba másolja HTTP vagy HTTPS használatával a 443-as porton, majd betölti az adatokat az előkészítésből az SQL Database-be vagy az Azure Synapse Analyticsbe. Ebben a folyamatban nem kell engedélyeznie az 1433-at.
- Előfordulhat, hogy egy lassú hálózati kapcsolaton keresztül egy hibrid adatáthelyezést (azaz egy helyszíni adattárból egy felhőbeli adattárba való másolást) kell végrehajtani. A teljesítmény javítása érdekében szakaszos másolással tömörítheti a helyszíni adatokat, így kevesebb időt vesz igénybe az adatok áthelyezése az átmeneti adattárba a felhőben. Ezután az átmeneti tárolóban lévő adatokat kibonthatja, mielőtt betöltené a céladattárat.
A szakaszos másolás működése
Az előkészítési funkció aktiválásakor a rendszer először a forrásadattárból az átmeneti tárolóba másolja az adatokat (hozza magával a saját Azure Blobot vagy az Azure Data Lake Storage Gen2-t). Ezután az adatok át lesznek másolva az előkészítésből a fogadó adattárba. A másolási tevékenység automatikusan kezeli a kétfázisú folyamatot, és az átmeneti tárolóból is eltávolítja az ideiglenes adatokat az adatáthelyezés befejezése után.
Törlési engedélyt kell adnia az Azure Data Factory számára az átmeneti tárolóban, hogy az ideiglenes adatok a másolási tevékenység futtatása után is törölhetők legyenek.
Amikor átmeneti tárolóval aktiválja az adatáthelyezést, megadhatja, hogy tömöríteni szeretné-e az adatokat, mielőtt adatokat helyez át a forrásadattárból az előkészítési tárolóba, majd kibontja az adatokat, mielőtt adatokat helyez át egy köztes vagy átmeneti adattárból a fogadó adattárba.
Jelenleg nem másolhat adatokat két olyan adattár között, amelyek különböző saját üzemeltetésű IRS-ek segítségével csatlakoznak egymáshoz, sem szakaszos másolással, sem anélkül. Ilyen esetben két explicit módon láncolt másolási tevékenységet konfigurálhat úgy, hogy a forrásból az előkészítésbe, majd az előkészítésből a fogadóba másolja a másolást.
Konfiguráció
A másolási tevékenység enableStaging beállításának konfigurálásával megadhatja, hogy az adatok a tárolóban legyenek-e, mielőtt betöltené őket egy céladattárba. Ha engedélyezi az előkészítéstTRUE
, adja meg az alábbi táblázatban felsorolt további tulajdonságokat.
Tulajdonság | Leírás | Alapértelmezett érték | Kötelező |
---|---|---|---|
enableStaging | Adja meg, hogy ideiglenes átmeneti tárolón keresztül szeretne-e adatokat másolni. | Hamis | Nem |
linkedServiceName | Adja meg az Azure Blob Storage vagy az Azure Data Lake Storage Gen2 társított szolgáltatás nevét, amely az átmeneti átmeneti tárolóként használt Storage-példányra hivatkozik. | n/a | Igen, ha az enableStaging értéke TRUE |
ösvény | Adja meg a szakaszos adatokat tartalmazó elérési utat. Ha nem ad meg elérési utat, a szolgáltatás létrehoz egy tárolót az ideiglenes adatok tárolásához. | n/a | Nem (Igen, ha storageIntegration a Snowflake-összekötő van megadva) |
enableCompression | Azt határozza meg, hogy az adatok tömörítve legyenek-e a célhelyre másolás előtt. Ez a beállítás csökkenti az átvitt adatok mennyiségét. | Hamis | Nem |
Feljegyzés
Ha szakaszos másolatot használ, és engedélyezve van a tömörítés, a szolgáltatásnév vagy az MSI-hitelesítés nem támogatott az átmeneti blobalapú szolgáltatáshoz.
Íme egy másolási tevékenység mintadefiníciója az előző táblázatban ismertetett tulajdonságokkal:
"activities":[
{
"name": "CopyActivityWithStaging",
"type": "Copy",
"inputs": [...],
"outputs": [...],
"typeProperties": {
"source": {
"type": "OracleSource",
},
"sink": {
"type": "SqlDWSink"
},
"enableStaging": true,
"stagingSettings": {
"linkedServiceName": {
"referenceName": "MyStagingStorage",
"type": "LinkedServiceReference"
},
"path": "stagingcontainer/path"
}
}
}
]
Szakaszos másolás számlázásának hatása
A díjat két lépés alapján számítjuk fel: a másolás időtartama és a másolás típusa.
- Amikor egy felhőbeli másolás során átmeneti állapotot használ, amely egy felhőbeli adattárból egy másik felhőbeli adattárba másolja az adatokat, az Azure integrációs modul által támogatott mindkét fázisban a [másolási időtartam összege az 1. és a 2. lépésben] x [felhőbeli másolási egység ára].
- Ha az előkészítést egy hibrid másolás során használja, amely egy helyszíni adattárból egy felhőbeli adattárba másolja az adatokat, a saját üzemeltetésű integrációs modul által támogatott egyik fázisban a [hibrid másolás időtartama] x [hibrid másolási egység ára] + [felhőbeli másolás időtartama] x [felhőbeli másolási egység ára] díjat számítunk fel.
Kapcsolódó tartalom
Lásd a többi másolási tevékenységről szóló cikket:
- Copy tevékenység áttekintése
- Útmutató a másolási tevékenységek teljesítményéhez és skálázhatóságához
- Másolási tevékenység teljesítményének hibaelhárítása
- Adatok migrálása a data lake-ből vagy adattárházból az Azure-ba az Azure Data Factory használatával
- Adatok migrálása az Amazon S3-ból az Azure Storage-ba