Megosztás a következőn keresztül:


Séma- és adattípus-leképezés másolási tevékenységben

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 azt ismerteti, hogy az Azure Data Factory másolási tevékenysége hogyan hajtja végre a sémaleképezést és az adattípus-leképezést a forrásadatoktól a fogadó adatokig.

Séma-hozzárendelés

Alapértelmezett leképezés

Alapértelmezés szerint a másolási művelet a forrásadatokat oszlopnevek szerint, kis- és nagybetűk érzékeny módon térképezi fel. Ha a fogadó nem létezik, például fájlba történő írás esetén, a forrásmezőnevek fogadónévként maradnak meg. Ha a fogadó már létezik, a forrásból másolt összes oszlopot tartalmaznia kell. Az ilyen alapértelmezett leképezés támogatja a rugalmas sémákat és a sémák forrásról fogadóra való eltérését a végrehajtástól a végrehajtásig – a forrásadattár által visszaadott összes adat átmásolható a fogadóba.

Ha a forrás fejlécsor nélküli szövegfájl, explicit leképezésre van szükség, mivel a forrás nem tartalmaz oszlopneveket.

Explicit leképezés

Explicit leképezést is megadhat az oszlop-/mezőleképezés forrásról fogadóra való testreszabásához az igényeinek megfelelően. Explicit leképezéssel csak részleges forrásadatokat másolhat a céltárba, vagy leképezheti a forrásadatokat különböző nevű céltárba, vagy átformálhatja a táblázatos/hierarchikus adatokat. Másolási tevékenység:

  1. Beolvassa az adatokat a forrásból, és meghatározza a forrássémát.
  2. Alkalmazza a definiált leképezést.
  3. Az adatokat a fogadóba írja.

További információk:

A leképezést konfigurálhatja a Szerzői felhasználói felületen –> másolási tevékenység –> leképezés lapon, vagy programozott módon megadhatja a leképezést a másolási tevékenységben –>translator tulajdonságban. A következő tulajdonságok támogatottak a tömbökbentranslator> –mappings objektumokban > –>source és sink, amelyek az adatok leképezéséhez az adott oszlopra/mezőre mutatnak.

Tulajdonság Leírás Szükséges
név A forrás vagy fogadó oszlop/mező neve. Alkalmazzon táblázatos forrásra és fogadóra. Igen
sorszám Oszlopindex. 1-től kezdve.
Fejlécsor nélküli elválasztójeles szöveg használatakor kötelező alkalmazni és megadni a szükséges beállításokat.
Nem
elérési út JSON-elérésiút-kifejezés minden kinyerni vagy leképíteni kívánt mezőhöz. Hierarchikus forrás és fogadó, például Azure Cosmos DB, MongoDB vagy REST-összekötők esetén alkalmazható.
A gyökérobjektum alatti mezők esetében a JSON-elérési út a gyökérrel $ kezdődik. Az collectionReference tulajdonság által kiválasztott tömbben lévő mezők esetében a JSON-elérési út a tömbelemnél kezdődik, $ nélkül.
Nem
típus A forrás vagy fogadó oszlop köztes adattípusa. Általában nem kell megadnia vagy módosítania ezt a tulajdonságot. További információ az adattípus-leképezésről. Nem
kulturális környezet A forrás vagy nyelő oszlop kultúrája. Akkor alkalmazható, ha a típus Datetime vagy Datetimeoffset. Az alapértelmezett érték en-us.
Általában nem kell megadnia vagy módosítania ezt a tulajdonságot. További információ az adattípus-leképezésről.
Nem
formátum A formázási sztring, amelyet akkor kell használni, ha a típus Datetime vagy Datetimeoffset. Tekintse meg a egyéni dátum- és időformátum-sztringek útmutatóját a dátum és idő formázásának módjáról. Általában nem kell megadnia vagy módosítania ezt a tulajdonságot. További információ az adattípus-leképezésről. Nem

A következő tulajdonságok támogatottak translator mellett, kiegészítve mappings:

Tulajdonság Leírás Szükséges
gyűjteményHivatkozás Alkalmazza az adatokat hierarchikus forrásból, például az Azure Cosmos DB-ből, a MongoDB-ből vagy a REST-összekötőkből való másoláskor.
Ha egy ugyanazzal a mintával rendelkező tömbmezőben lévő objektumokból szeretne adatokat iterálni és kinyerni, majd objektumonként soronként átalakítani, adja meg a tömb JSON útvonalát, hogy keresztalkalmazásként használhassa.
Nem

Táblázatos adatforrásból táblázatos adatsincsbe

Ha például adatokat szeretne másolni a Salesforce-ból az Azure SQL Database-be, és explicit módon megfeleltet három oszlopot:

  1. A "Másolási tevékenység" –> "leképezés" lapon kattintson a "Sémák importálása" gombra, hogy importálja a forrás- és fogadósémákat.

  2. Térképezze fel a szükséges mezőket, és zárja ki/törölje a többit.

Táblázatos leképezés táblázatosra

A leképezés ugyanúgy konfigurálható a másolási tevékenység hasznos adataiban, mint a következőképpen (lásd translator):

{
    "name": "CopyActivityTabularToTabular",
    "type": "Copy",
    "typeProperties": {
        "source": { "type": "SalesforceSource" },
        "sink": { "type": "SqlSink" },
        "translator": {
            "type": "TabularTranslator",
            "mappings": [
                {
                    "source": { "name": "Id" },
                    "sink": { "name": "CustomerID" }
                },
                {
                    "source": { "name": "Name" },
                    "sink": { "name": "LastName" }
                },
                {
                    "source": { "name": "LastModifiedDate" },
                    "sink": { "name": "ModifiedDate" }
                }
            ]
        }
    },
    ...
}

Ha a tagolt szövegfájl(ok)ból fejlécsor nélkül szeretne adatokat másolni, az oszlopokat a nevek helyett sorszám jelöli.

{
    "name": "CopyActivityTabularToTabular",
    "type": "Copy",
    "typeProperties": {
        "source": { "type": "DelimitedTextSource" },
        "sink": { "type": "SqlSink" },
        "translator": {
            "type": "TabularTranslator",
            "mappings": [
                {
                    "source": { "ordinal": "1" },
                    "sink": { "name": "CustomerID" }
                }, 
                {
                    "source": { "ordinal": "2" },
                    "sink": { "name": "LastName" }
                }, 
                {
                    "source": { "ordinal": "3" },
                    "sink": { "name": "ModifiedDate" }
                }
            ]
        }
    },
    ...
}

Hierarchikus forrás a táblázatos fogadóhoz

Ha hierarchikus forrásból táblázatos fogadóba másol adatokat, a másolási tevékenység a következő képességeket támogatja:

  • Adatok kinyerása objektumokból és tömbökből.
  • Több objektumot hasonló mintával keresztkapcsolhat egy tömbből, így egy JSON-objektum több rekorddá alakítható táblázatos eredményben.

A fejlettebb hierarchikus-táblázatos átalakításhoz használhatja a Adatfolyam.

Ha például forrás MongoDB-dokumentuma a következő tartalommal rendelkezik:

{
    "id": {
        "$oid": "592e07800000000000000000"
    },
    "number": "01",
    "date": "20170122",
    "orders": [
        {
            "prod": "p1",
            "price": 23
        },
        {
            "prod": "p2",
            "price": 13
        },
        {
            "prod": "p3",
            "price": 231
        }
    ],
    "city": [ { "name": "Seattle" } ]
}

A tömbben lévő adatok (order_pd és order_price) összesimításával és a gyakori gyökéradatokkal (szám, dátum és város) való keresztillesztéssel pedig a következő formátumú szövegfájlba szeretné másolni:

rendelési szám megrendelés dátuma rendelés_pd rendelési ár Város
01 20170122 P1 23 Seattle
01 20170122 P2 13 Seattle
01 20170122 P3 231 Seattle

Az ilyen leképezést a Data Factory szerzői felhasználói felületén határozhatja meg:

  1. A "Másolási tevékenység" –> "leképezés" lapon kattintson a "Sémák importálása" gombra, hogy importálja a forrás- és fogadósémákat. Mivel a szolgáltatás a séma importálásakor az első néhány objektumot mintaként használja, ha egy mező nem jelenik meg, felveheti a hierarchiában a megfelelő rétegbe – mutasson egy meglévő mező nevére, és válasszon csomópontot, objektumot vagy tömböt.

  2. Jelölje ki azt a tömböt, amelyből adatokat szeretne iterálni és kinyerni. Automatikusan kitöltésre kerül gyűjteményhivatkozásként. Vegye figyelembe, hogy az ilyen műveletekhez csak egyetlen tömb használható.

  3. A szükséges mezők leképezése a fogadóhelyre. A szolgáltatás automatikusan meghatározza a hierarchikus oldal megfelelő JSON-elérési útvonalait.

Feljegyzés

Az olyan rekordok esetében, ahol a gyűjteményhivatkozásként megjelölt tömb üres, és a jelölőnégyzet be van jelölve, a rendszer kihagyja a teljes rekordot.

Hierarchikus adatok táblázatosra alakítása a felhasználói felület segítségével

A Speciális szerkesztőre is válthat, ebben az esetben közvetlenül megtekintheti és szerkesztheti a mezők JSON-útvonalait. Ha új leképezést szeretne hozzáadni ebben a nézetben, adja meg a JSON elérési útját.

Hierarchikus adatok táblázattá alakítása haladó szerkesztővel

A leképezés ugyanúgy konfigurálható a másolási tevékenység hasznos adataiban, mint a következőképpen (lásd translator):

{
    "name": "CopyActivityHierarchicalToTabular",
    "type": "Copy",
    "typeProperties": {
        "source": { "type": "MongoDbV2Source" },
        "sink": { "type": "DelimitedTextSink" },
        "translator": {
            "type": "TabularTranslator",
            "mappings": [
                {
                    "source": { "path": "$['number']" },
                    "sink": { "name": "orderNumber" }
                },
                {
                    "source": { "path": "$['date']" },
                    "sink": { "name": "orderDate" }
                },
                {
                    "source": { "path": "['prod']" },
                    "sink": { "name": "order_pd" }
                },
                {
                    "source": { "path": "['price']" },
                    "sink": { "name": "order_price" }
                },
                {
                    "source": { "path": "$['city'][0]['name']" },
                    "sink": { "name": "city" }
                }
            ],
            "collectionReference": "$['orders']"
        }
    },
    ...
}

Táblázatos/hierarchikus forrás a hierarchikus fogadóhoz

A felhasználói élmény folyamata hasonlít a hierarchikus forrásból táblázatos fogadóba áramlásra.

Ha táblázatos forrásból hierarchikus fogadóba másol adatokat, az objektumon belüli tömbbe való írás nem támogatott.

Ha hierarchikus forrásból hierarchikus fogadóba másol adatokat, a teljes réteg hierarchiáját megőrizheti úgy, hogy kiválasztja az objektumot/tömböt, és a belső mezők érintése nélkül leképezi a fogadóba.

A fejlettebb adatátalakításhoz használhatja az Adatfolyam.

Megfeleltetés paraméterezése

Ha olyan templatizált folyamatot szeretne létrehozni, amely nagy számú objektumot szeretne dinamikusan másolni, határozza meg, hogy használhatja-e az alapértelmezett leképezést, vagy explicit leképezést kell meghatároznia a megfelelő objektumokhoz.

Ha explicit leképezésre van szükség, a következő műveleteket végezheti el:

  1. Definiáljon egy olyan paramétert, amelynek objektumtípusa a folyamat szintjén van, például mapping: .

  2. A leképezés paraméterezése: a másolási művelet –> leképezés fülén adjon hozzá dinamikus tartalmat, és válassza ki a fenti paramétert. A tevékenység hasznos terhelése a következő:

    {
        "name": "CopyActivityHierarchicalToTabular",
        "type": "Copy",
        "typeProperties": {
            "source": {...},
            "sink": {...},
            "translator": {
                "value": "@pipeline().parameters.mapping",
                "type": "Expression"
            },
            ...
        }
    }
    
  3. Hozza létre a leképezési paraméterbe továbbítandó értéket. A definíció teljes objektumának translator kell lennie, tekintse meg az explicit leképezési szakaszban található mintákat. Például a táblázatos forrás és a táblázatos fogadó másolása esetén az értéknek a következőnek kell lennie {"type":"TabularTranslator","mappings":[{"source":{"name":"Id"},"sink":{"name":"CustomerID"}},{"source":{"name":"Name"},"sink":{"name":"LastName"}},{"source":{"name":"LastModifiedDate"},"sink":{"name":"ModifiedDate"}}]}: .

Adattípus-leképezés

A másolási tevékenység a forrástípusokat a következő folyamat szerint képezi le fogadótípusokra:

  1. Konvertálás a forrás natív adattípusaiból az Azure Data Factory és a Synapse-folyamatok által használt köztes adattípusokká.
  2. Szükség szerint automatikusan átalakítja a köztes adattípust a megfelelő fogadótípusoknak megfelelően, amelyek az alapértelmezett leképezésre és az explicit leképezésre is alkalmazhatók.
  3. Konvertálás köztes adattípusokról fogadó natív adattípusokká.

Copy tevékenység jelenleg a következő köztes adattípusokat támogatja: Logikai, Bájt, Bájttömb, Datetime, DatetimeOffset, Decimális, Dupla, GUID, Int16, Int32, Int64, SByte, Single, String, Timespan, UInt16, UInt32 és UInt64.

A forrástól a fogadóig tartó köztes típusok között az alábbi adattípus-átalakítások támogatottak.

Forrás\Fogadó logikai Bájttömb Dátum/Idő Decimális Lebegőpontos GUID Egész szám Sztring időtartam
logikai
Bájttömb
Dátum/Idő
Decimális
Lebegőpontos
GUID
Egész
Sztring
időtartam

Az időpont/dátum a DateTime, DateTimeOffset, Dátum és Idő értékeket tartalmazza.

(2) Az úszó pont magában foglalja az egy- és a dupla pontot.

(3) Az egész szám magában foglalja az SByte, a Bájt, az Int16, az UInt16, az Int32, az UInt32, az Int64 és az UInt64 értéket.

Feljegyzés

  • Jelenleg az ilyen adattípus-átalakítás támogatott a táblázatos adatok közötti másoláskor. A hierarchikus források/fogadók nem támogatottak, ami azt jelenti, hogy nincs rendszer által definiált adattípus-átalakítás a forrás és a fogadó köztes típusai között.
  • 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.

Az adattípus-átalakítás másolási tevékenységében a következő tulajdonságok támogatottak ( translator a programozott szerzői műveletek szakaszában):

Tulajdonság Leírás Szükséges
típuskonverzió Engedélyezze az új adattípus-átalakítási felületet.
Az alapértelmezett érték a visszamenőleges kompatibilitás miatt hamis.

A Data Factory felhasználói felületén 2020. június vége óta létrehozott új másolási tevékenységek esetében ez az adattípus-átalakítás alapértelmezés szerint engedélyezve van a legjobb élmény érdekében, és a másolási tevékenység alábbi típuskonvertálási beállításai láthatók –> a vonatkozó forgatókönyvek leképezési lapja.
A folyamat programozott létrehozásához explicit módon igaz értékre kell állítania typeConversion a tulajdonságot az engedélyezéshez.
A funkció megjelenése előtt létrehozott meglévő másolási tevékenységek esetében a szövegkonvertálási beállítások nem fognak megjelenni a szerzői felhasználói felületen a visszamenőleges kompatibilitás érdekében.
Nem
típuskonverziós beállítások Típuskonvertálási beállítások csoportja. Alkalmazza, ha typeConversion be van állítva.true Az alábbi tulajdonságok mind ebbe a csoportba tartoznak. Nem
Alatt typeConversionSettings
Adatcsonkítás engedélyezése Az adatok csonkolásának engedélyezése, ha a forrásadatokat más típusú fogadóvá konvertálja a másolás során, például decimálisról egész számra, DatetimeOffsetről Datetime-ra.
Az alapértelmezett érték igaz.
Nem
treatBooleanAsNumber A logikai értékeket számként kezelje, például az igaz értéket 1-ként.
Az alapértelmezett érték hamis.
Nem
dateFormat Dátumok és sztringek közötti konvertáláskor a sztringet formázni kell, például yyyy-MM-dd. Részletes információkért tekintse meg az egyéni dátum- és időformátum sztringeket . Nem
dátumIdőFormátum Sztring formázása időzóna eltolás nélküli dátumok és sztringek közötti konvertáláskor, például yyyy-MM-dd HH:mm:ss.fff. Részletes információkért tekintse meg az egyéni dátum- és időformátum sztringeket . Nem
dátumIdőEltolásFormátum Dátumok és időzóna eltolással rendelkező sztringek közötti konvertáláskor használt formátum, például yyyy-MM-dd HH:mm:ss.fff zzz. Részletes információkért tekintse meg az egyéni dátum- és időformátum sztringeket . Nem
timeSpanFormat Időszakok és karakterláncok közötti konvertálás formátumának megadása, például dd\.hh\:mm. Részletes információkért tekintse meg a Custom TimeSpan Format Sztringeket . Nem
timeFormat Sztring formázása idő és sztringek közötti konvertáláskor, például. HH:mm:ss.fff Részletes információkért tekintse meg az egyéni dátum- és időformátum sztringeket . Nem
kulturális környezet A típusok konvertálásához használandó kulturális információk, például en-usfr-fra . Nem

Példa:

{
    "name": "CopyActivity",
    "type": "Copy",
    "typeProperties": {
        "source": {
        	"type": "ParquetSource"
        },
        "sink": {
            "type": "SqlSink"
        },
        "translator": {
            "type": "TabularTranslator",
            "typeConversion": true,
            "typeConversionSettings": {
                "allowDataTruncation": true,
                "treatBooleanAsNumber": true,
                "dateTimeFormat": "yyyy-MM-dd HH:mm:ss.fff",
                "dateTimeOffsetFormat": "yyyy-MM-dd HH:mm:ss.fff zzz",
                "timeSpanFormat": "dd\.hh\:mm",
                "culture": "en-gb"
            }
        }
	},
    ...
}

Régi modellek

Feljegyzés

A forrásoszlopok/mezők célhelyre történő leképezéséhez az alábbi modellek továbbra is támogatottak a visszamenőleges kompatibilitás érdekében. Javasoljuk, hogy a sémaleképezésben említett új modellt használja. A szerzői felhasználói felület az új modell létrehozására váltott.

Alternatív oszlopleképezés (örökölt modell)

A táblázatos alakzatú adatok közötti leképezéshez megadhatja a másolási tevékenységet .>translator>columnMappings Ebben az esetben a "struktúra" szakaszra mind a bemeneti, mind a kimeneti adatkészletek esetében szükség van. Az oszlopleképezés támogatja a forrásadatkészlet "struktúra" oszlopainak teljes vagy részhalmazának leképezését a fogadó adathalmaz "struktúra" összes oszlopára. A következő hibafeltételek kivételt eredményeznek:

  • A forrásadattár lekérdezési eredménye nem rendelkezik a bemeneti adatkészlet "struktúra" szakaszában megadott oszlopnévvel.
  • A fogadóadattár (ha előre definiált sémával rendelkezik) nem rendelkezik a kimeneti adathalmaz "struktúra" szakaszában megadott oszlopnévvel.
  • A fogadó adathalmaz "szerkezetében" a leképezésben megadottnál kevesebb vagy több oszlop szerepel.
  • Duplikált leképezés.

Az alábbi példában a bemeneti adatkészlet struktúrája egy helyszíni Oracle-adatbázisban lévő táblára mutat.

{
    "name": "OracleDataset",
    "properties": {
        "structure":
         [
            { "name": "UserId"},
            { "name": "Name"},
            { "name": "Group"}
         ],
        "type": "OracleTable",
        "linkedServiceName": {
            "referenceName": "OracleLinkedService",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "tableName": "SourceTable"
        }
    }
}

Ebben a mintában a kimeneti adatkészlet struktúrája egy Salesforce-táblára mutat.

{
    "name": "SalesforceDataset",
    "properties": {
        "structure":
        [
            { "name": "MyUserId"},
            { "name": "MyName" },
            { "name": "MyGroup"}
        ],
        "type": "SalesforceObject",
        "linkedServiceName": {
            "referenceName": "SalesforceLinkedService",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "tableName": "SinkTable"
        }
    }
}

Az alábbi JSON egy másolási tevékenységet határoz meg egy folyamatban. A forrás oszlopai a fogadó oszlopaira vannak leképezve a translator ->columnMappings tulajdonság használatával.

{
    "name": "CopyActivity",
    "type": "Copy",
    "inputs": [
        {
            "referenceName": "OracleDataset",
            "type": "DatasetReference"
        }
    ],
    "outputs": [
        {
            "referenceName": "SalesforceDataset",
            "type": "DatasetReference"
        }
    ],
    "typeProperties":    {
        "source": { "type": "OracleSource" },
        "sink": { "type": "SalesforceSink" },
        "translator":
        {
            "type": "TabularTranslator",
            "columnMappings":
            {
                "UserId": "MyUserId",
                "Group": "MyGroup",
                "Name": "MyName"
            }
        }
    }
}

Ha a "columnMappings": "UserId: MyUserId, Group: MyGroup, Name: MyName" szintaxist használja oszlopleképezéshez, ez továbbra is változtatás nélkül támogatott.

Alternatív sémaleképezés (örökölt modell)

Megadhatja a másolási tevékenységet –>translator>schemaMapping a hierarchikus alakú adatok és a táblázatos alakzatú adatok közötti leképezéshez, például a MongoDB/REST fájlból a szövegfájlba való másoláshoz, illetve az Oracle-ből a MongoDB-hez készült Azure Cosmos DB-be való másoláshoz. A másolási tevékenység translator szakasz a következő tulajdonságokat támogatja:

Tulajdonság Leírás Szükséges
típus A másolási tevékenység fordítójának típustulajdonságának a következőnek kell lennie: TabularTranslator Igen
schemaMapping Kulcs-érték párok gyűjteménye, amely a forrás és a fogadó oldal közötti leképezési relációt jelöli.
- Kulcs: a forrást jelöli. Táblázatos forrás esetén adja meg az adathalmaz szerkezetében definiált oszlopnevet; hierarchikus forrás esetén adja meg az egyes kinyerni és leképezendő mezőkhöz tartozó JSON-elérési utat.
- Érték: a fogadóhelyet jelöli. Táblázatos fogadó esetén adja meg az adathalmaz szerkezetében definiált oszlopnevet; hierarchikus fogadó esetén adja meg az egyes kinyerni és leképezendő mezőkhöz tartozó JSON-elérési utat.
Hierarchikus adatok esetén a gyökérobjektum alatti mezők esetében a JSON-elérési út a $gyökérrel kezdődik; a tulajdonság által collectionReference kiválasztott tömbben lévő mezők esetében a JSON-elérési út a tömbelemből indul ki.
Igen
gyűjteményHivatkozás Ha iterálni és kinyerni szeretne adatokat egy tömbmezőn belül található objektumokból ugyanazon minta szerint, és soronként szeretné átalakítani objektumonként, adja meg annak a tömbnek a JSON-útvonalát, hogy keresztalkalmazást hajthasson végre. Ez a tulajdonság csak akkor támogatott, ha a hierarchikus adatok forrásként jelennek meg. Nem

Példa: másolás a MongoDB-ből az Oracle-be:

Ha például MongoDB-dokumentuma a következő tartalommal rendelkezik:

{
    "id": {
        "$oid": "592e07800000000000000000"
    },
    "number": "01",
    "date": "20170122",
    "orders": [
        {
            "prod": "p1",
            "price": 23
        },
        {
            "prod": "p2",
            "price": 13
        },
        {
            "prod": "p3",
            "price": 231
        }
    ],
    "city": [ { "name": "Seattle" } ]
}

és a tömbön belüli adatok (order_pd és order_price) összesimításával és a gyakori gyökéradatokkal (szám, dátum és város) való keresztillesztéssel a következő formátumban szeretné átmásolni egy Azure SQL-táblába:

rendelésszám rendelési dátum order_pd rendelés ára Város
01 20170122 P1 23 Seattle
01 20170122 P2 13 Seattle
01 20170122 P3 231 Seattle

Konfigurálja a sémaleképezési szabályt a következő másolási tevékenység JSON-mintájaként:

{
    "name": "CopyFromMongoDBToOracle",
    "type": "Copy",
    "typeProperties": {
        "source": {
            "type": "MongoDbV2Source"
        },
        "sink": {
            "type": "OracleSink"
        },
        "translator": {
            "type": "TabularTranslator",
            "schemaMapping": {
                "$.number": "orderNumber",
                "$.date": "orderDate",
                "prod": "order_pd",
                "price": "order_price",
                "$.city[0].name": "city"
            },
            "collectionReference":  "$.orders"
        }
    }
}

Lásd a másolási tevékenységről szóló további cikkeket: