Copy tevékenység teljesítményoptimalizálási funkciók

A KÖVETKEZŐKRE VONATKOZIK: Azure Data Factory Azure Synapse Analytics

Ez a cikk a másolási tevékenységek teljesítményoptimalizálási funkcióit ismerteti, amelyek a Azure Data Factory Synapse-folyamatokban hasznosak.

Adatintegrációs egységek

Az adatintegrációs egység egy olyan mérték, amely a szolgáltatáson belüli egyetlen egység energiaellátását (a processzor, a memória és a hálózati erőforrás-kiosztás kombinációját) jelöli. Az adatintegrációs egység csak az Azure-beli integrációs ésintegrációs környezetre vonatkozik, a saját üzemelő integrációskörnyezetre nem.

A másolási tevékenység futtatását lehetővé tő DIUS-okat 2 és 256 közötti lehet. Ha nincs megadva, vagy az "Automatikus" lehetőséget választja a felhasználói felületen, 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. A következő táblázat a támogatott DIU-tartományokat és az alapértelmezett viselkedést sorolja fel a különböző másolási forgatókönyvekben:

Másolási forgatókönyv Támogatott DIU-tartomány A szolgáltatás által meghatározott alapértelmezett DIUS-okat
Fájlt tárolók között - Másolás egyetlen fájlból vagy fájlba: 2–4
- Másolás több fájlból és fájlba: 2–256 a fájlok számától és méretétől függően

Ha például 4 nagy méretű fájlt tartalmazó mappából másol adatokat, és úgy dönt, hogy megtartja a hierarchiát, a maximális tényleges diU 16; A fájlok egyesítésekor a maximális tényleges 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: 2-4
- Másolás több fájlból: 2–256 a fájlok számától és méretétől függően

Ha például egy 4 nagy méretű fájlt tartalmazó mappából másol adatokat, a maximálisan hatékony DIU 16.
- Másolás Azure SQL Database vagy Azure Cosmos DB: 4 és 16 között a fogadószinttől (DTUs/RU-k) és a forrásfájl mintától függően
- Másolás Azure Synapse Analytics PolyBase vagy 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éggel kompatibilis adattárakból (beleértve a Azure Database for PostgreSQL-t,a Azure SQL Database-et, az Azure SQL Managed Instance-t,az Azure Synapse Analytics-t, az Oracle-t, a Netezzát,az SQL Server-tés a Teradata-ot):2–256 egy mappába való íráskor, és 2–4 egyetlen fájlba való íráskor. Vegye figyelembe, hogy a forrásadatpartíciók legfeljebb 4 DIUS-t használhatnak.
- Egyéb forgatókönyvek: 2–4
- Másolás REST-ről vagy HTTP-ről: 1
- Másolás a Amazon Redshift AZ UNLOAD használatával: 2
- Egyéb forgatókönyv: 4
Nem fájl tárolók között - Másolás partíciós lehetőséggel kompatibilis adattárakból (beleértve a Azure Database for PostgreSQL-t,a Azure SQL Database-et, az Azure SQL Managed Instance-t,az Azure Synapse Analytics-t, az Oracle-t, a Netezzát,az SQL Server-tés a Teradata-ot):2–256 egy mappába való íráskor, és 2–4 egyetlen fájlba való íráskor. Vegye figyelembe, hogy a forrásadatpartíciók legfeljebb 4 DIUS-t használhatnak.
- Egyéb forgatókönyvek: 2–4
- Másolás REST-ről vagy HTTP-ről: 1
- Egyéb forgatókönyv: 4

Az egyes másolási futtatáshoz használt DIUS-okat a másolási tevékenység figyelési nézetében vagy a tevékenység kimenetében láthatja. További információ: Copy tevékenység figyelése. Az alapértelmezett beállítás felülbírálásaként adja meg a tulajdonság dataIntegrationUnits értékét az alábbiak szerint. A másolási művelet által futtatáskor használt DIUS-értékek tényleges száma az adatmintától függően a konfigurált értékkel egyenlő vagy annál kisebb.

A felhasznált DIU-k másolási időtartamának * * egységára/DIU-óra díjával számolunk fel díjat. Az aktuális árakat itt láthatja. Előfizetéstípusonként helyi pénznem és külön kedvezmény is alkalmazható.

Példa

"activities":[
    {
        "name": "Sample copy activity",
        "type": "Copy",
        "inputs": [...],
        "outputs": [...],
        "typeProperties": {
            "source": {
                "type": "BlobSource",
            },
            "sink": {
                "type": "AzureDataLakeStoreSink"
            },
            "dataIntegrationUnits": 128
        }
    }
]

Saját üzemeltetett integrációskörnyezet méretezhetősége

Ha nagyobb átviteli sebességet szeretne elérni, skálázhatja fel horizontálisan vagy horizontálisan a saját üzemeltetett integrációs integrációs kiszolgálót:

  • Ha a cpu és a rendelkezésre álló memória nincs teljesen kihasználva a saját üzemeltetett integrációs integrációs szolgáltatás csomópontján, de az egyidejű feladatok végrehajtása eléri a korlátot, érdemes növelni a csomóponton futtatható egyidejű feladatok számát. Az utasításokat itt láthatja.
  • Ha azonban a processzor magas az önkiszolgáló integrációs integrációs szolgáltatás csomópontján, vagy a rendelkezésre álló memória alacsony, hozzáadhat egy új csomópontot, amely segít horizontálisan felskálni a terhelést a több csomópontra. Az utasításokat itt láthatja.

Vegye figyelembe, hogy a következő forgatókönyvekben az egyetlen másolási tevékenység végrehajtása több helyi integrációs integrációspontot is kihasználhat:

Párhuzamos másolás

A másolási tevékenységhez párhuzamos másolást (tulajdonságot) állíthat be, amely jelzi a másolási tevékenység által használni parallelCopies kívánt párhuzamosságokat. Ezt a tulajdonságot felhasználhatja a másolási tevékenységben található szálak maximális számaként, amelyek párhuzamosan olvasnak a forrásból, vagy párhuzamosan írnak a fogadó adattárakba.

A párhuzamos másolat adatintegrációs egységekbe vagy helyi integrációs integrációs csomópontokra van szervezve. Ez az összes DIUs- vagy saját üzemeltetett integrációspont-csomópont között meg van számolni.

Alapértelmezés szerint a szolgáltatás minden másolási tevékenység futtatásakor 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 DIUS-ek száma, vagy a saját üzemeltetett integrációs integrációs rendszer CPU-/memória-/csomópontszáma alapján. A párhuzamos másolás hangolásáról a Másolási tevékenység teljesítményének hibaelhárítása témakörben kaphat további részleteket.

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 tárolók között parallelCopiesA a fájl szintjén határozza meg a párhuzamosságokat. Az egyes fájlokon belüli adattömbök automatikusan és transzparens módon történnek a fájl alatt. Ú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 másolási tevékenység által a futtatáskor használt párhuzamos másolatok száma nem több, mint a fájlok száma. Ha a másolási viselkedés mergeFile a fájl fogadójában, a másolási tevékenység nem tudja kihasználni a fájlszintű párhuzamosság előnyeit.
Fájltárolóból nem fájltárolóba – Amikor adatokat másol Azure SQL Database vagy Azure Cosmos DB, az alapértelmezett párhuzamos másolás a fogadószinttől is függ (DTUs/RU-k száma).
– Az adatok Azure Table-be való másolásakor az alapértelmezett párhuzamos másolás 4.
Nem fájltárolóból fájltárolóba - Amikor adatokat másol a partícióbeállítás-kompatibilis adattárból (beleértve az Azure SQL Database-t, az Azure SQL Managed Instance-t,a Azure Synapse Analytics-t,az Oracle-t, az Amazon RDS-taz Oracle-hez, a Netezzához, a SAP HANA-hoz,az SAP Open Hubhoz,az SAP Tablehez, a SQL Server-hoz,az Amazon RDS-t az SQL Server-hoz és a Teradata-hoz),az alapértelmezett párhuzamos másolás 4. A párhuzamos másolási másolási tevékenységek futtatáskor használt tényleges száma nem több, mint az Adatpartíciók száma. Ha saját üzemelő példányt Integration Runtime azure blobba/ADLS Gen2, vegye figyelembe, hogy a maximális párhuzamos másolás ir-csomópontonként 4 vagy 5 lehet.
– Más esetekben a párhuzamos másolás nem lép életbe. A párhuzamosság még ha meg is van adva, nem lesz alkalmazva.
Nem fájl tárolók között – Amikor adatokat másol Azure SQL Database vagy Azure Cosmos DB, az alapértelmezett párhuzamos másolás a fogadószinttől is függ (DTUs/RU-k száma).
- Amikor adatokat másol a partícióbeállítás-kompatibilis adattárból (beleértve az Azure SQL Database-t, az Azure SQL Managed Instance-t,a Azure Synapse Analytics-t,az Oracle-t, az Amazon RDS-taz Oracle-hez, a Netezzához, a SAP HANA-hoz,az SAP Open Hubhoz,az SAP Tablehez, a SQL Server-hoz,az Amazon RDS-t az SQL Server-hoz és a Teradata-hoz),az alapértelmezett párhuzamos másolás 4.
– Az adatok Azure Table-be való másolásakor az alapértelmezett párhuzamos másolás 4.

Az adattárakat tároló gépek terhelésének szabályozására vagy a másolási teljesítmény hangolására felülbírálhatja az alapértelmezett értéket, és megadhatja a tulajdonság parallelCopies értékét. Az értéknek egy 1-nél nagyobb vagy egyenlő egész számnak kell lennie. Futásidőben a legjobb teljesítmény érdekében a másolási tevékenység olyan értéket használ, amely kisebb vagy egyenlő a beállított értékkel.

Amikor megad egy értéket a tulajdonsághoz, vegye figyelembe a forrás- és fogadóadattárak parallelCopies terhelésének növekedését. Vegye figyelembe a saját üzemeltetett integrációs környezet terhelésének növekedését is, ha a másolási tevékenységet ez teszi lehetővé. Ez a terhelésnövekedés különösen akkor fordul elő, ha több tevékenység vagy ugyanazon tevékenységek egyidejű futtatása fut ugyanazon az adattáron. Ha azt veszi észre, hogy az adattár vagy a saját üzemeltetett integrációs környezet túlterhelt a terhelés miatt, csökkentse az értéket a terhelés parallelCopies 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, választhatja az Azure Blob Storage vagy az Azure Data Lake Storage Gen2 átmeneti átmeneti tárolóként való használatát. Az előkészítés különösen hasznos a következő esetekben:

  • Különböző adattárakból szeretne adatokat behozni a Azure Synapse Analytics-ba PolyBase-en keresztül, adatokat másolni a Snowflake-be vagy onnan a Snowflake-be, vagy nagy teljesítményben Amazon Redshift HDFS-ről. További részletek:
  • A vállalati it-szabályzatok miatt nem szeretné a 80-as és a 443-as porton kívül más portokat megnyitni a tűzfalon. Ha például egy helyszíni adattárból másol adatokat egy Azure SQL Database-be vagy egy Azure Synapse Analytics-be, aktiválnia kell a kimenő TCP-kommunikációt az 1433-as porton az Windows tűzfalhoz és a vállalati tűzfalhoz is. Ebben a forgatókönyvben az szakaszos másolás kihasználja a helyi integrációs környezet előnyeit, hogy először http vagy HTTPS protokollon keresztül másol adatokat egy átmeneti tárolóba a 443-as porton, majd betölti az adatokat az előkészítési környezetből az SQL Database-ba vagy Azure Synapse Analytics. Ebben a folyamatban nem kell engedélyeznie az 1433-as portot.
  • Néha a hibrid adatátmozgatás (azaz a helyszíni adattárból a felhőalapú adattárba való másolás) egy lassú hálózati kapcsolaton keresztüli hibrid adatátmozgatás is időbe telik. A teljesítmény javítása érdekében az adatok helyszíni tömörítéséhez használhat szakaszos másolást, így kevesebb időt vesz igénybe az adatok áthelyezése a felhőben található előkészítési adattárba. Ezután kibonthatja az előkészítési tárolóban tárolt adatokat, mielőtt betölti őket a céladattárba.

Az szakaszos másolás működése

Az előkészítési szolgáltatás aktiválásakor a rendszer először a forrásadattárból az átmeneti tárolóba másolja az adatokat (a saját Azure Blob vagy Azure Data Lake Storage Gen2 használatával). Ezután a rendszer átmásolja az adatokat az előkészítésből a fogadó adattárba. A másolási tevékenység automatikusan felügyeli a kétszakaszos folyamatot, és az adatáthelyozás befejezése után ideiglenes adatokat is megtisztít az átmeneti tárolóból.

Szakaszos másolás

Ha előkészítési tárolóval aktiválja az adatáthelyet, megadhatja, hogy tömöríteni szeretné-e az adatokat, mielőtt áthelyezi az adatokat a forrásadattárból az előkészítési tárolóba, majd kibontja őket, mielőtt áthelyezi az adatokat egy átmeneti 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ő helyi IRS-ekkel csatlakoznak, sem szakaszos másolással, sem anélkül. Ilyen esetben konfigurálhat két explicit módon láncolt másolási tevékenységet a forrásból az előkészítésbe, majd az előkészítésből a fogadóba való másoláshoz.

Konfiguráció

Konfigurálja az előkészítés engedélyezése beállítást a másolási tevékenységben annak megadásához, hogy az adatokat a tárolóban szeretné-e előkészítésre állítani, mielőtt betölti azokat a céladattárba. Ha az enableStaging (Előkészítés engedélyezése) értéket TRUE adja meg, adja meg a következő táblázatban felsorolt további tulajdonságokat.

Tulajdonság Leírás Alapértelmezett érték Kötelező
előkészítés engedélyezése Adja meg, hogy egy átmeneti átmeneti tárolón keresztül szeretne-e adatokat másolni. Hamis No
linkedServiceName Adja meg egy Azure Blob Storage- vagy Azure Data Lake Storage Gen2-beli csatolt szolgáltatás nevét, amely az átmeneti átmeneti tárolóként használt Storage példányára hivatkozik. N/A Igen, ha az enableStaging (Előkészítés engedélyezése) beállítás TRUE (igaz)
path Adja meg az elérési utat, amely az szakaszos adatokat tartalmazni szeretné. Ha nem ad meg elérési utat, a szolgáltatás létrehoz egy tárolót az ideiglenes adatok tárolására. N/A No
enableCompression Meghatározza, hogy tömörítse-e az adatokat a célhelyre való másolás előtt. Ez a beállítás csökkenti az átvitt adatok mennyiségét. Hamis No

Megjegyzés

Ha szakaszos másolást használ engedélyezett tömörítéssel, az előkészítési blobhoz kapcsolódó szolgáltatás szolgáltatásnév vagy MSI-hitelesítés nem támogatott.

Íme egy példa egy másolási tevékenység definícióra az előző táblázatban leírt 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"
            }
        }
    }
]

A szakaszos másolás számlázásának hatása

A díj két lépésből áll: a másolás időtartama és a másolás típusa alapján.

  • Ha az előkészítést felhőalapú másolás során használja, amely adatokat másol egy felhőalapú adattárból egy másik felhőalapú adattárba, az Azure integration Runtime által lehetővé teszi mindkét szakaszért a [másolási időtartam összege az 1. és a 2. lépésben] x [felhőalapú másolási egység ára] díjat kell fizetnie.
  • Ha előkészítést használ egy hibrid másolás során, amely adatokat másol egy helyszíni adattárból egy felhőalapú adattárba, egy saját üzemelő integrációs környezetben futó integrációs környezet által lehetővé tért szakaszért a [hibrid másolási időtartam] x [hibrid másolási egység ára] + [felhőmásolási időtartam] x [felhőalapú másolási egység ára] díjat kell fizetnie.

Következő lépések

Lásd a másolási tevékenységgel kapcsolatos további cikkeket: