Copy tevékenység az Azure Data Factory és a Azure Synapse Analyticsben

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

A Azure Data Factory- és Synapse-folyamatokban a Copy tevékenység használatával másolhat adatokat a helyszínen és a felhőben található adattárak között. Az adatok másolása után más tevékenységekkel tovább átalakíthatja és elemezheti azokat. A Copy tevékenység az üzleti intelligencia (BI) és az alkalmazáshasználat átalakítási és elemzési eredményeinek közzétételére is használhatja.

A Copy tevékenység szerepe

A Copy tevékenység egy integrációs modulon lesz végrehajtva. Különböző típusú integrációs modulokat használhat különböző adatmásolási forgatókönyvekhez:

  • Amikor adatokat másol két olyan adattár között, amelyek bármely IP-címről nyilvánosan elérhetők az interneten keresztül, az Azure integrációs modulját használhatja a másolási tevékenységhez. Ez az integrációs modul biztonságos, megbízható, méretezhető és globálisan elérhető.
  • Amikor a helyszínen vagy hozzáférés-vezérléssel rendelkező hálózaton (például egy Azure-beli virtuális hálózatban) található adattárakba másol adatokat, be kell állítania egy saját üzemeltetésű integrációs modult.

Minden forrás- és fogadóadattárhoz integrációs modult kell társítani. További információ arról, hogy a Copy tevékenység hogyan határozza meg a használandó integrációs modult: Annak meghatározása, hogy melyik integrációs modult kell használni.

Ha adatokat szeretne másolni egy forrásból egy fogadóba, a Copy tevékenység futtató szolgáltatás az alábbi lépéseket hajtja végre:

  1. Adatokat olvas be egy forrásadattárból.
  2. Szerializálást/deszerializálást, tömörítést/dekompressziót, oszlopleképezést stb. végez. Ezeket a műveleteket a bemeneti adatkészlet, a kimeneti adatkészlet és a Copy tevékenység konfigurációja alapján hajtja végre.
  3. Adatokat ír a fogadó/cél adattárba.

Copy tevékenység áttekintése

Támogatott adattárak és formátumok

Kategória Adattár Forrásként támogatott Fogadóként támogatott Az Azure IR által támogatott Helyi integrációs modul által támogatott
Azure Azure Blob Storage
  Az Azure Cognitive Search indexe
  Azure Cosmos DB (SQL API)
  MongoDB-hez készült Azure Cosmos DB API
  Azure Data Explorer
  1. generációs Azure Data Lake Storage
  Azure Data Lake Storage Gen2
  Azure Database for MariaDB
  Azure Database for MySQL
  Azure Database for PostgreSQL
  Azure Databricks Delta Lake
  Azure Files
  Azure SQL Database
  Felügyelt Azure SQL-példány
  Azure Synapse Analytics
  Azure Table storage
Adatbázis Amazon RDS for Oracle
  Amazon RDS for SQL Server
  Amazon Redshift
  DB2
  Drill
  Google BigQuery
  Greenplum
  HBase
  Hive
  Apache Impala
  Informix
  MariaDB
  Microsoft Access
  MySQL
  Netezza
  Oracle
  Phoenix
  PostgreSQL
  Presto
  SAP Business Warehouse via Open Hub
  SAP Business Warehouse via MDX
  SAP HANA A fogadó csak az ODBC-összekötővel és az SAP HANA ODBC-illesztővel támogatott
  SAP-tábla
  Snowflake
  Spark
  SQL Server
  Sybase
  Teradata
  Vertica
NoSQL Cassandra
  Couchbase (előzetes verzió)
  MongoDB
  MongoDB Atlas
Fájl Amazon S3
  Amazon S3-kompatibilis tároló
  Fájlrendszer
  FTP
  Google Cloud Storage
  HDFS
  Google Cloud Storage
  SFTP
Általános protokoll Általános HTTP
  Általános OData
  Általános ODBC
  Általános REST
Szolgáltatások és alkalmazások Amazon Marketplace Web Service
  Concur (előzetes verzió)
  Dataverse
  Dynamics 365
  Dynamics AX
  Dynamics CRM
  Google AdWords
  HubSpot
  Jira
  Magento (előzetes verzió)
  Marketo (előzetes verzió)
  Microsoft 365
  Oracle Eloqua (előzetes verzió)
  Oracle Responsys (előzetes verzió)
  Oracle Service Cloud (előzetes verzió)
  PayPal (előzetes verzió)
  QuickBooks (előzetes verzió)
  Salesforce
  Salesforce Service Cloud
  Salesforce Marketing Cloud
  SAP Cloud for Customer (C4C)
  SAP ECC
  ServiceNow
SharePoint Online-lista
  Shopify (előzetes verzió)
  Square (előzetes verzió)
  Webtábla (HTML-tábla)
  Xero
  Zoho (előzetes verzió)

Megjegyzés

Az előzetes verzió jelzéssel ellátott összekötőket kipróbálhatja, és visszajelzést küldhet róluk. Ha függőséget szeretne felvenni a megoldásában található előzetes verziójú összekötőkre, lépjen kapcsolatba az Azure-támogatással.

Támogatott fájlformátumok

Azure Data Factory a következő fájlformátumokat támogatja. A formátumalapú beállításokért tekintse meg az egyes cikkeket.

A Copy tevékenység két fájlalapú adattár közötti fájlmásolásra használhatja, amely esetben az adatok hatékony másolása szerializálás vagy deszerializálás nélkül történik. Emellett egy adott formátumú fájlokat is elemezhet vagy hozhat létre, például a következőket hajthatja végre:

  • Adatokat másolhat egy SQL Server adatbázisból, és parquet formátumban írhat Azure Data Lake Storage Gen2.
  • Másolja a szöveges (CSV) formátumú fájlokat egy helyszíni fájlrendszerből, és írjon az Azure Blob Storage-ba Avro formátumban.
  • Tömörített fájlokat másolhat egy helyszíni fájlrendszerből, menet közben kibonthatja őket, és kicsomagolt fájlokat írhat a Azure Data Lake Storage Gen2.
  • Gzip tömörített szöveg (CSV) formátumú adatokat másolhat az Azure Blob Storage-ból, és megírhatja azokat Azure SQL Database-be.
  • Még sok más olyan tevékenység, amely szerializálást/deszerializálást vagy tömörítést/dekompressziót igényel.

Támogatott régiók

A Copy tevékenység engedélyező szolgáltatás globálisan elérhető az Azure integrációs moduljának helyein felsorolt régiókban és földrajzi helyeken. A globálisan elérhető topológia hatékony adatáthelyezést biztosít, amely általában elkerüli a régiók közötti ugrásokat. A Termékek régiónként című témakörben ellenőrizheti a Data Factory, a Synapse-munkaterületek és az adatáthelyezés elérhetőségét egy adott régióban.

Konfiguráció

A Copy tevékenység folyamattal való végrehajtásához az alábbi eszközök vagy SDK-k egyikét használhatja:

A Copy tevékenység Azure Data Factory vagy Synapse-folyamatokban való használatához általában a következőkre van szükség:

  1. Társított szolgáltatások létrehozása a forrásadattárhoz és a fogadó adattárhoz. A támogatott összekötők listáját a jelen cikk Támogatott adattárak és formátumok szakaszában találja. A konfigurációs információkért és a támogatott tulajdonságokért tekintse meg az összekötő cikk "Társított szolgáltatás tulajdonságai" szakaszát.
  2. Hozzon létre adatkészleteket a forráshoz és a fogadóhoz. A konfigurációs információkért és a támogatott tulajdonságokért tekintse meg a forrás- és fogadó-összekötő cikkeinek "Adathalmaz tulajdonságai" című szakaszát.
  3. Hozzon létre egy folyamatot a Copy tevékenység. A következő szakasz egy példát mutat be.

Syntax

A Copy tevékenység alábbi sablonja a támogatott tulajdonságok teljes listáját tartalmazza. Adja meg a forgatókönyvnek megfelelőket.

"activities":[
    {
        "name": "CopyActivityTemplate",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<source dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<sink dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>",
                <properties>
            },
            "sink": {
                "type": "<sink type>"
                <properties>
            },
            "translator":
            {
                "type": "TabularTranslator",
                "columnMappings": "<column mapping>"
            },
            "dataIntegrationUnits": <number>,
            "parallelCopies": <number>,
            "enableStaging": true/false,
            "stagingSettings": {
                <properties>
            },
            "enableSkipIncompatibleRow": true/false,
            "redirectIncompatibleRowSettings": {
                <properties>
            }
        }
    }
]

Szintaxis részletei

Tulajdonság Leírás Kötelező?
típus Egy Copy tevékenység a következő értékre van állítva:Copy Yes
Bemenetek Adja meg a létrehozott adatkészletet, amely a forrásadatokra mutat. A Copy tevékenység csak egyetlen bemenetet támogat. Yes
Kimenetek Adja meg a létrehozott adatkészletet, amely a fogadó adataira mutat. A Copy tevékenység csak egyetlen kimenetet támogat. Yes
typeProperties Adja meg a Copy tevékenység konfigurálásához használt tulajdonságokat. Yes
source Adja meg a másolási forrás típusát és az adatok beolvasásához szükséges tulajdonságokat.
További információt a támogatott adattárakban és -formátumokban található összekötő-cikk "Copy tevékenység tulajdonságok" című szakaszában talál.
Yes
Mosogató Adja meg a másolási fogadó típusát és az adatok írásához szükséges tulajdonságokat.
További információt a támogatott adattárakban és -formátumokban található összekötő-cikk "Copy tevékenység tulajdonságok" című szakaszában talál.
Yes
Fordító Adjon meg explicit oszlopleképezéseket a forrástól a fogadóig. Ez a tulajdonság akkor érvényes, ha az alapértelmezett másolási viselkedés nem felel meg az igényeinek.
További információ: Sémaleképezés másolási tevékenységben.
No
dataIntegrationUnits Adjon meg egy mértéket, amely az Azure integrációs modul által az adatmásoláshoz használt energia mennyiségét jelöli. Ezeket az egységeket korábban felhőbeli adatáthelyezési egységeknek (DMU) nevezték.
További információ: Adatintegrációs egységek.
No
párhuzamos példányok Adja meg azt a párhuzamosságot, amelyet a Copy tevékenység használni szeretne, amikor adatokat olvas a forrásból, és adatokat ír a fogadóba.
További információ: Párhuzamos másolás.
No
Megőrzése Adja meg, hogy meg szeretné-e őrizni a metaadatokat/ACL-eket az adatmásolás során.
További információ: Metaadatok megőrzése.
No
enableStaging
stagingSettings
Adja meg, hogy a köztes adatokat a Blob Storage-ban szeretné-e szakaszolni ahelyett, hogy közvetlenül másolt adatokat a forrásból a fogadóba.
A hasznos forgatókönyvekkel és konfigurációs részletekkel kapcsolatos információkért lásd a szakaszos másolatot.
No
enableSkipIncompatibleRow
redirectIncompatibleRowSettings
Adja meg, hogyan kezelje a nem kompatibilis sorokat, amikor adatokat másol a forrásból a fogadóba.
További információ: Hibatűrés.
No

Figyelés

A Azure Data Factory és a Synapse-folyamatokban futtatott Copy tevékenység vizuálisan és programozottan is monitorozhatja. Részletekért lásd: Másolási tevékenység figyelése.

Növekményes másolás

A Data Factory- és Synapse-folyamatok lehetővé teszik a különbözeti adatok növekményes másolását egy forrásadattárból egy fogadó adattárba. Részletekért lásd az oktatóanyagot: Adatok növekményes másolása.

Teljesítmény és finomhangolás

A másolási tevékenység monitorozási felülete megjeleníti az egyes tevékenységfuttatások másolási teljesítménystatisztikáit. A Copy tevékenység teljesítmény- és méretezhetőségi útmutató azokat a fő tényezőket ismerteti, amelyek befolyásolják az adatáthelyezés teljesítményét a Copy tevékenység keresztül. Emellett felsorolja a tesztelés során megfigyelt teljesítményértékeket, és ismerteti a Copy tevékenység teljesítményének optimalizálását.

Folytatás a legutóbbi sikertelen futtatásból

Copy tevékenység támogatja a legutóbbi sikertelen futtatás utáni folytatást, ha nagy méretű fájlokat másol bináris formátumban a fájlalapú tárolók között, és úgy dönt, hogy megőrzi a mappát/fájlhierarchiát a forrástól a fogadóig, például az adatok Amazon S3-ból Azure Data Lake Storage Gen2-be történő áttelepítéséhez. A következő fájlalapú összekötőkre vonatkozik: Amazon S3, Amazon S3 compatible StorageAzure Blob, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure Files, Fájlrendszer, FTP, Google Cloud Storage, HDFS, Oracle Cloud Storage és SFTP.

A másolási tevékenység folytatását az alábbi két módon használhatja:

  • Tevékenységszintű újrapróbálkozás: A másolási tevékenység újrapróbálkozásainak számát beállíthatja. Ha a folyamat végrehajtása során a másolási tevékenység futtatása sikertelen, a következő automatikus újrapróbálkozás a legutóbbi próbaverzió meghibásodási pontjától indul el.

  • Újrafuttatva a sikertelen tevékenységből: A folyamat végrehajtása után újrafuttathatja a sikertelen tevékenységet az ADF felhasználói felület figyelési nézetében vagy programozott módon. Ha a sikertelen tevékenység másolási tevékenység, a folyamat nem csak újrafut ebből a tevékenységből, hanem az előző futtatás hibapontjáról is folytatódik.

    Önéletrajz másolása

Néhány megjegyzés:

  • A folytatás fájlszinten történik. Ha a másolási tevékenység meghiúsul egy fájl másolása során, a következő futtatáskor a program újramásolja ezt a fájlt.
  • A folytatás megfelelő működéséhez ne módosítsa a másolási tevékenység beállításait az újrafuttatások között.
  • Amikor adatokat másol az Amazon S3-ból, az Azure Blobból, a Azure Data Lake Storage Gen2 és a Google Cloud Storage-ból, a másolási tevékenység tetszőleges számú másolt fájlból folytatódhat. Míg a többi fájlalapú összekötő esetében, mint forrás, jelenleg a másolási tevékenység korlátozott számú fájlból támogatja a folytatást, általában több tízezernél, és a fájlelérési utak hosszától függően változik; az ezen a számon túli fájlok újra lesznek másolva az újrafuttatások során.

A bináris fájlmásoláson kívül más esetekben a másolási tevékenység újrafuttatása az elejétől kezdődik.

Metaadatok és adatok megőrzése

Az adatok forrásból fogadóba történő másolása során a data lake-migráláshoz hasonló esetekben a metaadatok és az ACL-ek, valamint az adatok másolási tevékenységgel való megőrzése mellett is dönthet. A részletekért lásd: Metaadatok megőrzése .

Séma- és adattípus-leképezés

A séma- és adattípus-megfeleltetésről további információt talál arról, hogy a Copy tevékenység hogyan képezi le a forrásadatokat a fogadóba.

További oszlopok hozzáadása másolás közben

A forrásadattárból a fogadóba másolt adatokon kívül további adatoszlopok hozzáadását is konfigurálhatja a fogadóba való másoláshoz. Például:

  • Fájlalapú forrásból történő másoláskor a relatív fájl elérési útját tárolja további oszlopként, hogy nyomon követhesse, melyik fájlból származnak az adatok.
  • Duplikálja a megadott forrásoszlopot egy másik oszlopként.
  • Adjon hozzá egy ADF-kifejezést tartalmazó oszlopot ADF-rendszerváltozók, például folyamatnév/folyamatazonosító csatolásához, vagy a felsőbb rétegbeli tevékenység kimenetéből származó egyéb dinamikus érték tárolásához.
  • Adjon hozzá egy statikus értékkel rendelkező oszlopot, hogy megfeleljen az alsóbb rétegbeli felhasználás igényeinek.

A másolási tevékenység forráslapján az alábbi konfiguráció található. Ezeket a további oszlopokat a másolási tevékenység sémaleképezésében is megfeleltetheti a szokásos módon a megadott oszlopnevek használatával.

További oszlopok hozzáadása másolási tevékenységhez

Tipp

Ez a funkció a legújabb adathalmaz-modellel működik. Ha nem látja ezt a beállítást a felhasználói felületen, próbáljon meg létrehozni egy új adatkészletet.

A programozott konfiguráláshoz adja hozzá a tulajdonságot a additionalColumns másolási tevékenység forrásához:

Tulajdonság Leírás Kötelező
additionalColumns Adjon hozzá további adatoszlopokat a fogadóba való másoláshoz.

A tömb alatt lévő additionalColumns minden objektum egy további oszlopot jelöl. Ez name határozza meg az oszlop nevét, és az value oszlop adatértékét jelzi.

Az engedélyezett adatértékek a következők:
- $$FILEPATH - egy fenntartott változó azt jelzi, hogy a forrásfájlok relatív elérési útja az adathalmazban megadott mappa elérési útjára mutat. Alkalmazás fájlalapú forrásra.
- $$COLUMN:<source_column_name> - a fenntartott változó mintája azt jelzi, hogy a megadott forrásoszlop egy másik oszlopként duplikálva van
- Kifejezés
- Statikus érték
No

Példa

"activities":[
    {
        "name": "CopyWithAdditionalColumns",
        "type": "Copy",
        "inputs": [...],
        "outputs": [...],
        "typeProperties": {
            "source": {
                "type": "<source type>",
                "additionalColumns": [
                    {
                        "name": "filePath",
                        "value": "$$FILEPATH"
                    },
                    {
                        "name": "newColName",
                        "value": "$$COLUMN:SourceColumnA"
                    },
                    {
                        "name": "pipelineName",
                        "value": {
                            "value": "@pipeline().Pipeline",
                            "type": "Expression"
                        }
                    },
                    {
                        "name": "staticValue",
                        "value": "sampleValue"
                    }
                ],
                ...
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Tipp

A további oszlopok konfigurálása után ne felejtse el leképezni őket a cél fogadóhoz, a Leképezés lapon.

Fogadótáblák automatikus létrehozása

Amikor adatokat másol az SQL Database-be/Azure Synapse Analyticsbe, ha a céltábla nem létezik, a másolási tevékenység támogatja az automatikus létrehozást a forrásadatok alapján. Célja, hogy segítsen gyorsan megkezdeni az adatok betöltését és az SQL Database/Azure Synapse Analytics kiértékelését. Az adatbetöltés után áttekintheti és módosíthatja a fogadótábla sémáját az igényeinek megfelelően.

Ez a funkció akkor támogatott, ha adatokat másol bármely forrásból a következő fogadóadattárakba. Ezt a lehetőséget az ADF szerzői felhasználói felületén –>Copy tevékenység fogadóTábla lehetőség –>>Táblázat automatikus létrehozása lehetőségnél, vagy a másolási tevékenység fogadójának hasznos adataiban található tulajdonságon keresztül tableOption találja meg.

Fogadótáblák létrehozása

Hibatűrés

Alapértelmezés szerint a Copy tevékenység leállítja az adatok másolását, és hibát ad vissza, ha a forrásadatsorok nem kompatibilisek a fogadó adatsoraival. A másolás sikerességéhez konfigurálhatja a Copy tevékenység, hogy kihagyja és naplózza a nem kompatibilis sorokat, és csak a kompatibilis adatokat másolja. Részletekért tekintse meg Copy tevékenység hibatűrést.

Adatkonzisztencia-ellenőrzés

Amikor adatokat helyez át a forrásból a céltárolóba, a másolási tevékenység lehetővé teszi további adatkonzisztencia-ellenőrzés elvégzését, hogy az adatok ne csak a forrásból a céltárolóba legyenek átmásolva, hanem a forrás és a céltároló közötti konzisztenciát is igazolják. Miután az adatáthelyezés során inkonzisztens fájlokat talált, megszakíthatja a másolási tevékenységet, vagy folytathatja a másolást a többivel, ha engedélyezi a hibatűrési beállítást az inkonzisztens fájlok kihagyásához. A kihagyott fájlneveket a másolási tevékenység munkamenetnapló-beállításának engedélyezésével szerezheti be. Részletekért tekintse meg az adatkonzisztencia-ellenőrzést a másolási tevékenységben .

Munkamenet-napló

Naplózhatja a másolt fájlneveket, így a másolási tevékenység munkamenetnaplóinak áttekintésével további meggyőződhet arról, hogy az adatok nem csak a forrásból a céltárolóba történő másolása sikeres volt, hanem a forrás- és a céltároló között is konzisztens. A részleteket a munkamenetnapló másolási tevékenységében találja.

Következő lépések

Tekintse meg az alábbi rövid útmutatókat, oktatóanyagokat és példákat: