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


ORC formátum az Azure Data Factoryben és a Synapse Analyticsben

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!

Kövesse ezt a cikket, ha elemezni szeretné az ORC-fájlokat, vagy ORC formátumban szeretné írni az adatokat.

Az ORC formátum a következő összekötők esetében támogatott: Amazon S3, Amazon S3 kompatibilis tároló, Azure Blob, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure Files, Fájlrendszer, FTP, Google Cloud Storage, HDFS, HTTP, Oracle Cloud Storage és SFTP.

Adathalmaz tulajdonságai

Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az Adathalmazok című cikkben találja. Ez a szakasz az ORC-adatkészlet által támogatott tulajdonságok listáját tartalmazza.

Tulajdonság Leírás Kötelező
típus Az adathalmaz típustulajdonságának Orc értékre kell állítania. Igen
hely A fájl(ok) helybeállításai. Minden fájlalapú összekötő saját helytípussal és támogatott tulajdonságokkal rendelkezik a(z) < a0/> alatt location. Lásd az összekötőkről szóló cikk –> Adathalmaz tulajdonságai szakasz részleteit. Igen
compressionCodec Az ORC-fájlokba való íráshoz használandó tömörítési kodek. ORC-fájlokból való olvasáskor a Data Factories automatikusan meghatározza a tömörítési kodeket a fájl metaadatai alapján.
A támogatott típusok a következők: nincs, zlib, snappy (alapértelmezett) és lzo. Vegye figyelembe, hogy jelenleg Copy tevékenység nem támogatja az LZO-t ORC-fájlok olvasása/írása során.
Nem

Az alábbiakban egy példa az ORC-adatkészletre az Azure Blob Storage-on:

{
    "name": "OrcDataset",
    "properties": {
        "type": "Orc",
        "linkedServiceName": {
            "referenceName": "<Azure Blob Storage linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, retrievable during authoring > ],
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "container": "containername",
                "folderPath": "folder/subfolder",
            }
        }
    }
}

Vegye figyelembe az alábbiakat:

  • Az összetett adattípusok (pl. MAP, LIST, STRUCT) jelenleg csak Adatfolyam támogatottak, másolási tevékenységben nem. Ha összetett típusokat szeretne használni az adatfolyamokban, ne importálja a fájlsémát az adathalmazba, és hagyja üresen a sémát az adathalmazban. Ezután a Forrás átalakítás során importálja a vetületet.
  • Az oszlopnévben lévő üres terület nem támogatott.

Másolási tevékenység tulajdonságai

A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című cikkben találja. Ez a szakasz az ORC-forrás és a fogadó által támogatott tulajdonságok listáját tartalmazza.

ORC forrásként

A másolási tevékenység *forrás* szakasza az alábbi tulajdonságokat támogatja.

Tulajdonság Leírás Kötelező
típus A másolási tevékenység forrásának típustulajdonságát OrcSource értékre kell állítani. Igen
storeSettings Az adatok adattárból való olvasására vonatkozó tulajdonságok csoportja. Minden fájlalapú összekötő saját támogatott olvasási beállításokkal rendelkezik a következő alatt storeSettings: . Az összekötőkről szóló cikk részleteinek megtekintése –> Copy tevékenység tulajdonságok szakasz. Nem

ORC fogadóként

A másolási tevékenység *fogadó* szakasza az alábbi tulajdonságokat támogatja.

Tulajdonság Leírás Kötelező
típus A másolási tevékenység fogadójának típustulajdonságát OrcSink értékre kell állítani. Igen
formatSettings Egy tulajdonságcsoport. Tekintse meg az ORC írási beállításainak alábbi táblázatát. Nem
storeSettings Az adatok adattárba való írására vonatkozó tulajdonságok csoportja. Minden fájlalapú összekötő saját támogatott írási beállításokkal rendelkezik a .storeSettings Az összekötőkről szóló cikk részleteinek megtekintése –> Copy tevékenység tulajdonságok szakasz. Nem

Támogatott ORC írási beállítások a következő területenformatSettings:

Tulajdonság Leírás Kötelező
típus A formatSettings típusának OrcWriteSettings értékre kell állítania. Igen
maxRowsPerFile Ha adatokat ír egy mappába, több fájlba is írhat, és megadhatja a fájlonkénti maximális sorokat. Nem
fileNamePrefix Konfiguráláskor maxRowsPerFile alkalmazható.
Adja meg a fájlnév előtagot, amikor több fájlba ír adatokat, és a következő mintát eredményezte: <fileNamePrefix>_00000.<fileExtension>. Ha nincs megadva, a rendszer automatikusan létrehozza a fájlnév előtagot. Ez a tulajdonság nem érvényes, ha a forrás fájlalapú tároló vagy partícióbeállítás-kompatibilis adattár.
Nem

Adatfolyam-tulajdonságok leképezése

Az adatfolyamok leképezése során a következő adattárakban olvashat és írhat ORC formátumban: Azure Blob Storage, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2 és SFTP, orc formátumot pedig az Amazon S3-ban.

ORC-fájlokra mutathat ORC-adatkészlet vagy beágyazott adatkészlet használatával.

Forrástulajdonságok

Az alábbi táblázat felsorolja az ORC-forrás által támogatott tulajdonságokat. Ezeket a tulajdonságokat a Forrás beállításai lapon szerkesztheti.

Beágyazott adatkészlet használata esetén további fájlbeállítások jelennek meg, amelyek megegyeznek az adathalmaz tulajdonságainak szakaszában leírt tulajdonságokkal.

Név Leírás Kötelező Megengedett értékek Adatfolyam-szkript tulajdonság
Formátum A formátumnak orc igen orc format
Helyettesítő kártya elérési útjai A program minden olyan fájlt feldolgoz, amely megfelel a helyettesítő karakter elérési útjának. Felülbírálja az adathalmazban beállított mappát és fájl elérési útját. nem Karakterlánc[] helyettesítő karakterekPaths
Partíció gyökérútvonala A particionált fájladatok esetében megadhat egy partíció gyökérútvonalát, hogy a particionált mappákat oszlopként olvassa be nem Sztring partitionRootPath
Fájlok listája Azt jelzi, hogy a forrás olyan szövegfájlra mutat-e, amely felsorolja a feldolgozandó fájlokat nem true vagy false fileList
A fájlnév tárolására használt oszlop Új oszlop létrehozása a forrásfájl nevével és elérési útjával nem Sztring rowUrlColumn
A befejezés után A feldolgozás után törölje vagy helyezze át a fájlokat. A fájl elérési útja a tároló gyökerétől indul nem Törlés: true vagy false
Mozog: [<from>, <to>]
purgeFiles
moveFiles
Szűrés utoljára módosítva Fájlok szűrésének kiválasztása az utolsó módosításuk időpontjától függően nem Időbélyegző modifiedAfter
modifiedBefore
Nem található fájl engedélyezése Ha igaz, a rendszer nem ad hibát, ha nem található fájl nem true vagy false ignoreNoFilesFound

Példa forrásra

Az ORC-forráskonfiguráció társított adatfolyam-szkriptje a következő:

source(allowSchemaDrift: true,
    validateSchema: false,
    rowUrlColumn: 'fileName',
    format: 'orc') ~> OrcSource

Fogadó tulajdonságai

Az alábbi táblázat felsorolja az ORC-fogadó által támogatott tulajdonságokat. Ezeket a tulajdonságokat a Beállítások lapon szerkesztheti.

Beágyazott adatkészlet használata esetén további fájlbeállítások jelennek meg, amelyek megegyeznek az adathalmaz tulajdonságainak szakaszában leírt tulajdonságokkal.

Név Leírás Kötelező Megengedett értékek Adatfolyam-szkript tulajdonság
Formátum A formátumnak orc igen orc format
A mappa törlése Ha a célmappa írás előtt törlődik nem true vagy false megcsonkít
Fájlnév beállítás A megírt adatok elnevezési formátuma. Alapértelmezés szerint partíciónként egy fájl formátuma part-#####-tid-<guid> nem Minta: Sztring
Partíciónként: Sztring[]
Adatok az oszlopban: Sztring
Kimenet egyetlen fájlba: ['<fileName>']
filePattern
partitionFileNames
rowUrlColumn
partitionFileNames

Fogadó példa

Az ORC fogadó konfigurációjának társított adatfolyam-szkriptje a következő:

OrcSource sink(
    format: 'orc',
    filePattern:'output[n].orc',
    truncate: true,
    allowSchemaDrift: true,
    validateSchema: false,
    skipDuplicateMapInputs: true,
    skipDuplicateMapOutputs: true) ~> OrcSink

Saját üzemeltetésű integrációs modul használata

Fontos

A saját üzemeltetésű integrációs futtatókörnyezet (például a helyszíni és a felhőbeli adattárak közötti) másoláshoz, ha nem az ORC-fájlokat másolja, telepítenie kell a 64 bites JRE 8 -at (Java Futtatókörnyezet) vagy az OpenJDK-t és a Microsoft Visual C++ 2010 terjeszthető csomagot az IR-gépen. További részletekért tekintse meg a következő bekezdést.

A saját üzemeltetésű integrációs modulon orc fájlszerializálással/deszerializálással futtatott példány esetében a szolgáltatás megkeresi a Java-futtatókörnyezetet, először ellenőrizze a JRE beállításjegyzékét (SOFTWARE\JavaSoft\Java Runtime Environment\{Current Version}\JavaHome) , ha nem található, másodszor pedig ellenőrizze az OpenJDK rendszerváltozóit JAVA_HOME .

  • A JRE használatához: A 64 bites integrációs modulhoz 64 bites JRE szükséges. Innen megtalálhatja.
  • Az OpenJDK használata: Az INTEGRÁCIÓ 3.13-as verziója óta támogatott. Csomagolja be a jvm.dll az OpenJDK minden más szükséges szerelvényével egy saját üzemeltetésű integrációs modulba, és ennek megfelelően állítsa be a rendszerkörnyezet változóját JAVA_HOME.
  • A Visual C++ 2010 terjeszthető csomag telepítéséhez: A Visual C++ 2010 terjeszthető csomag nincs telepítve saját üzemeltetésű integrációs modul telepítésével. Innen megtalálhatja.

Tipp.

Ha a saját üzemeltetésű integrációs modullal orc formátumban másol adatokat, és a következő hibaüzenetet kapja: "Hiba történt a java meghívásakor, üzenet: java.lang.OutOfMemoryError:Java-halomterület", hozzáadhat egy környezeti változót _JAVA_OPTIONS a saját üzemeltetésű integrációs modult futtató gépen, hogy módosítsa a JVM minimális/maximális halomméretét a másolás engedélyezése érdekében, majd futtassa újra a folyamatot.

JVM-halomméret beállítása saját üzemeltetésű integrációs modulon

Példa: állítsa be a változót _JAVA_OPTIONS értékként -Xms256m -Xmx16g. A jelölő Xms a Java virtuális gép (JVM) kezdeti memóriafoglalási készletét adja meg, míg Xmx a maximális memóriafoglalási készletet határozza meg. Ez azt jelenti, hogy a JVM a memória mennyiségével Xms lesz elindítva, és maximális Xmx mennyiségű memóriát fog tudni használni. Alapértelmezés szerint a szolgáltatás min. 64 MB-ot és legfeljebb 1G-t használ.