COPY INTO
A következőkre vonatkozik: Databricks SQL
Databricks Runtime
Adatokat tölt be egy fájl helyről egy Delta-táblába. Ez egy újrapróbálkozható és idempotens művelet – A forráshelyen lévő, már betöltött fájlok kihagyva lesznek. Ez akkor is igaz, ha a fájlok betöltése óta módosultak. Példák: Gyakori adatbetöltési minták a COPY INTO használatával.
Syntax
COPY INTO target_table [ BY POSITION | ( col_name [ , <col_name> ... ] ) ]
FROM { source_clause |
( SELECT expression_list FROM source_clause ) }
FILEFORMAT = data_source
[ VALIDATE [ ALL | num_rows ROWS ] ]
[ FILES = ( file_name [, ...] ) | PATTERN = glob_pattern ]
[ FORMAT_OPTIONS ( { data_source_reader_option = value } [, ...] ) ]
[ COPY_OPTIONS ( { copy_option = value } [, ...] ) ]
source_clause
source [ WITH ( [ CREDENTIAL { credential_name |
(temporary_credential_options) } ]
[ ENCRYPTION (encryption_options) ] ) ]
Paraméterek
target_table
Egy meglévő Delta-táblát azonosít. A target_table nem tartalmazhat időbeli specifikációt.
Ha a tábla neve egy hely formájában van megadva, például:
delta.`/path/to/table`
, a Unity Catalog szabályozhatja a hozzáférést a megírt helyekhez. Külső helyre az alábbiak szerint írhat:- A hely meghatározása külső helyként, és engedélyekkel rendelkezik
WRITE FILES
a külső helyhez. - Engedéllyel rendelkezik
WRITE FILES
egy elnevezett tároló hitelesítő adataihoz, amelyek lehetővé teszik az írást egy helyre a következő használatával:COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)
További részletekért lásd: Csatlakozás a felhőbeli objektumtárolóhoz a Unity Catalog használatával.
- A hely meghatározása külső helyként, és engedélyekkel rendelkezik
BY POSITION
| ( col_name [ , <col_name> ... ] )A forrásoszlopokat sorrendi pozíció alapján a céltáblák oszlopainak felelteti meg. A megfeleltetett oszlopok típusának megadása automatikusan megtörténik.
Ez a paraméter csak fejléc nélküli CSV-fájlformátum esetén támogatott. Meg kell adnia
FILEFORMAT = CSV
.FORMAT_OPTIONS
az alapértelmezett értékre is be kell állítani("headers" = "false")
FORMAT_OPTIONS ("headers" = "false")
.1. szintaktikai beállítás:
BY POSITION
- A forrásoszlopokat automatikusan rendezési pozíció alapján a céltáblaoszlopok célhelyeként határozza meg.
- Az alapértelmezett névegyeztetés nem használatos az egyeztetéshez.
IDENTITY
a forrásoszlopok egyeztetésekor a céltábla oszlopai ésGENERATED
oszlopai figyelmen kívül lesznek hagyva.- Ha a forrásoszlopok száma nem egyenlő a szűrt céltábla oszlopokkal,
COPY INTO
hibát jelez.
Szintaxis 2. lehetőség:
( col_name [ , <col_name> ... ] )
- A forrásoszlopokat a megadott céltáblaoszlopokra vesszővel elválasztott, zárójelben lévő céltábla oszlopnévlistával relatív sorrend szerint egyezik meg.
- Az eredeti táblázat oszloprendje és oszlopnevei nem használhatók az egyeztetéshez.
IDENTITY
az oszlopok ésGENERATED
oszlopok nem adhatók meg az oszlopnévlistában, ellenkező esetbenCOPY INTO
hibát jelez.- A megadott oszlopok nem duplikálhatók.
- Ha a forrásoszlopok száma nem egyenlő a megadott táblaoszlopokkal,
COPY INTO
hibát jelez. - Az oszlopnévlistában
COPY INTO
nem megadott oszlopok esetében az alapértelmezett értékeket rendeli hozzá, ha vannak ilyenek, és másként rendeliNULL
hozzá. Ha bármelyik oszlop nem null értékű,COPY INTO
hibát jelez.
- A forrásoszlopokat automatikusan rendezési pozíció alapján a céltáblaoszlopok célhelyeként határozza meg.
source
A fájl helye, ahonnan betölti az adatokat. Az ezen a helyen lévő fájloknak meg kell adni a formátumot a következőben
FILEFORMAT
: . A hely URI formájában van megadva.A forráshelyhez való hozzáférés a következőn keresztül biztosítható:
credential_name
A tárolóhely eléréséhez vagy írásához használt hitelesítő adatok nem kötelező neve. Ezt a hitelesítő adatot csak akkor használja, ha a fájl helye nem szerepel egy külső helyen. Lásd: credential_name.
Beágyazott ideiglenes hitelesítő adatok.
Külső helyként definiálja a forráshelyet, és rendelkezik
READ FILES
engedélyekkel a külső helyre a Unity Catalogon keresztül.Névvel ellátott tárolási hitelesítő adatok használata olyan engedélyekkel
READ FILES
, amelyek lehetővé teszik az olvasást egy helyről a Unity Catalogon keresztül.
Nem kell beágyazott vagy elnevezett hitelesítő adatokat megadnia, ha az elérési út már olyan külső helyként van definiálva, amelyet használni szeretne. További részletekért tekintse meg a felhőbeli tároló Azure Databrickshez való csatlakoztatásához szükséges külső hely létrehozását ismertető cikket.
Feljegyzés
Ha a forrásfájl elérési útja gyökérútvonal, adjon hozzá egy perjelet (
/
) a fájl elérési útja végén, példáuls3://my-bucket/
.Az elfogadott hitelesítő adatok a következők:
AZURE_SAS_TOKEN
az ADLS Gen2-hez és az Azure Blob Storage-hozAWS_ACCESS_KEY
,AWS_SECRET_KEY
ésAWS_SESSION_TOKEN
az AWS S3 esetében
Az elfogadott titkosítási lehetőségek a következők:
TYPE = 'AWS_SSE_C'
, ésMASTER_KEY
az AWS S3 esetében
Lásd: Adatok betöltése a COPY INTO használatával ideiglenes hitelesítő adatokkal.
SELECT expression_list
A forrásadatokból kiválasztja a megadott oszlopokat vagy kifejezéseket, mielőtt a Delta-táblába másol. A kifejezések bármilyen utasítással
SELECT
használhatók, beleértve az ablakműveleteket is. Aggregációs kifejezéseket csak globális összesítésekhez használhat– ez a szintaxis nemGROUP BY
használható oszlopokra.FILEFORMAT = data_source
A betöltendő forrásfájlok formátuma. Az egyik
CSV
,JSON
,AVRO
,ORC
,PARQUET
, ,TEXT
.BINARYFILE
VALIDATE
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime 10.4 LTS és újabb
A táblába betöltendő adatok ellenőrzése megtörtént, de nem a táblába íródott. Ezek az érvényesítések a következők:
- Az adatok elemezhetők-e.
- Azt, hogy a séma megfelel-e a tábla sémájának, vagy a sémát fejleszteni kell.
- Annak ellenőrzése, hogy teljesül-e az összes nullhihetőségi és ellenőrzési korlátozás.
Az alapértelmezett érték az összes betöltendő adat ellenőrzése. A kulcsszóval
ROWS
érvényesítendő sorok száma megadható, példáulVALIDATE 15 ROWS
. AzCOPY INTO
utasítás 50 sor vagy kevesebb adat előnézetét adja vissza, ha a kulcsszóvalROWS
több mint 50-et használ.FILES
A betöltendő fájlnevek listája 1000 fájl korlátjával. Nem adhatók meg a következővel:
PATTERN
.PATTERN
Egy glob minta, amely azonosítja a forráskönyvtárból betöltendő fájlokat. Nem adhatók meg a következővel:
FILES
.Minta Leírás ?
Egyetlen karakternek felel meg *
Nulla vagy több karakter egyezése [abc]
Egyetlen karakternek felel meg a(z) {a,b,c} karakterkészletből. [a-z]
Egyetlen karaktert egyezik a(z) {a... karaktertartományból z}. [^a]
Egyetlen karaktert egyezik meg, amely nem a(z) {a} karakterkészletből vagy tartományból származik. Vegye figyelembe, hogy a ^
karakternek közvetlenül a nyitó zárójel jobb oldalán kell lennie.{ab,cd}
Megfelel a(z) {ab, cd} sztringkészlet egyik sztringjének. {ab,c{de, fh}}
Megfelel a(z) {ab, cde, cfh} sztringhalmazból származó sztringnek. FORMAT_OPTIONS
Az Apache Spark-adatforrás-olvasónak a megadott formátumhoz továbbítandó beállítások. Tekintse meg az egyes fájlformátumok formázási beállításait .
COPY_OPTIONS
A parancs működésének vezérlésére
COPY INTO
vonatkozó beállítások.force
: logikai, alapértelmezettfalse
. Ha be van állítva,true
az idempotencia le van tiltva, és a fájlok betöltése attól függetlenül történik, hogy korábban betöltötték-e őket.mergeSchema
: logikai, alapértelmezettfalse
. Ha be vantrue
állítva, a séma a bejövő adatok alapján fejleszthető.
Egyidejű meghívás COPY INTO
COPY INTO
támogatja az egyidejű meghívásokat ugyanazon a táblán. Mindaddig, amíg COPY INTO
az egyidejű meghívás különböző bemeneti fájlokon történik, az egyes meghívások végül sikeresek lesznek, ellenkező esetben tranzakcióütközést kap. COPY INTO
nem hívhatók meg egyidejűleg a teljesítmény javítása érdekében; A több fájlból álló egyetlen COPY INTO
parancs általában jobban teljesít, mint az egyidejű COPY INTO
parancsok futtatása egyetlen fájllal. COPY INTO
egyidejűleg hívható meg, ha:
- Több adatkészítő nem tudja egyszerűen koordinálni az adatokat, és egyetlen meghívást sem tud létrehozni.
- Amikor egy nagyon nagy könyvtár alkönyvtárként betölthető. Amikor nagyon sok fájllal tölti be a könyvtárakat, a Databricks az Automatikus betöltő használatát javasolja, ha lehetséges.
Fájl metaadatainak elérése
A fájlalapú adatforrások metaadatainak eléréséhez tekintse meg a Fájl metaadatai oszlopot.
Formázási beállítások
- Általános beállítások
JSON
beállításokCSV
beállításokXML
beállításokPARQUET
beállításokAVRO
beállításokBINARYFILE
beállításokTEXT
beállításokORC
beállítások
Általános beállítások
Az alábbi beállítások az összes fájlformátumra vonatkoznak.
Lehetőség |
---|
ignoreCorruptFiles Típus: Boolean A sérült fájlok figyelmen kívül hagyása. Ha igaz, a Spark-feladatok továbbra is futnak, amikor sérült fájlokba ütköznek, és az olvasott tartalom továbbra is vissza lesz adva. Megfigyelhető, mint numSkippedCorruptFiles aoperationMetrics a Delta Lake-előzmények oszlopában. A Databricks Runtime 11.3 LTS-ben és újabb verziókban érhető el.Alapértelmezett érték: false |
ignoreMissingFiles Típus: Boolean A hiányzó fájlok figyelmen kívül hagyása. Ha igaz, a Spark-feladatok továbbra is futnak, amikor hiányzó fájlokkal találkoznak, és az olvasott tartalom továbbra is vissza lesz adva. A Databricks Runtime 11.3 LTS-ben és újabb verziókban érhető el. Alapértelmezett érték: false (true for COPY INTO ) |
modifiedAfter Típus: Timestamp String például: 2021-01-01 00:00:00.000000 UTC+0 Nem kötelező időbélyeg a megadott időbélyeg után módosítási időbélyeget tartalmazó fájlok betöltéséhez. Alapértelmezett érték: Nincs |
modifiedBefore Típus: Timestamp String például: 2021-01-01 00:00:00.000000 UTC+0 Nem kötelező időbélyeg a megadott időbélyeg előtt módosítási időbélyeget tartalmazó fájlok betöltéséhez. Alapértelmezett érték: Nincs |
pathGlobFilter vagy fileNamePattern Típus: String Egy lehetséges glob minta, amely lehetővé teszik a fájlok kiválasztását. Egyenértékű a PATTERN in COPY INTO . fileNamePattern használható a következőben read_files : .Alapértelmezett érték: Nincs |
recursiveFileLookup Típus: Boolean Azt határozza meg, hogy kihagyja-e a partíciókövető következtetést a séma következtetése során. Ez nem befolyásolja, hogy mely fájlok legyenek betöltve. Alapértelmezett érték: false |
JSON
beállítások
Lehetőség |
---|
allowBackslashEscapingAnyCharacter Típus: Boolean Hogy engedélyezi-e a fordított perjeleket, hogy elkerüljenek minden karaktert, amely sikerrel jár. Ha nincs engedélyezve, csak a JSON-specifikációban kifejezetten felsorolt karaktereket lehet feloldani. Alapértelmezett érték: false |
allowComments Típus: Boolean Engedélyezve van-e a Java, a C és a C++ stílusú megjegyzések ( '/' és '*' '//' fajták) használata az elemzett tartalomban, vagy sem.Alapértelmezett érték: false |
allowNonNumericNumbers Típus: Boolean Engedélyezi-e a nem szám ( NaN ) jogkivonatok halmazát jogi lebegőszámértékekként.Alapértelmezett érték: true |
allowNumericLeadingZeros Típus: Boolean Annak engedélyezése, hogy az integrál számok további (figyelmen kívül hagyható) nullákkal kezdődjenek (például 000001 ).Alapértelmezett érték: false |
allowSingleQuotes Típus: Boolean Engedélyezi-e az idézőjelek (aposztróf, karakter '\' ) használatát sztringek (nevek és sztringértékek) idézéséhez.Alapértelmezett érték: true |
allowUnquotedControlChars Típus: Boolean Engedélyezi-e, hogy a JSON-sztringek használhatatlan vezérlőelem-karaktereket (32-nél kisebb értékű ASCII-karaktereket, beleértve a tabulátor- és vonalcsatorna-karaktereket) tartalmazzanak-e, vagy sem. Alapértelmezett érték: false |
allowUnquotedFieldNames Típus: Boolean Engedélyezi-e a nem kvótált mezőnevek használatát (amelyeket a JavaScript engedélyez, de a JSON-specifikáció nem). Alapértelmezett érték: false |
badRecordsPath Típus: String A rossz JSON-rekordok adatainak rögzítésére szolgáló fájlok tárolásának elérési útja. Alapértelmezett érték: Nincs |
columnNameOfCorruptRecord Típus: String A hibásan formázott és nem elemezhető rekordok tárolására szolgáló oszlop. Ha az mode elemzéshez be van állítva DROPMALFORMED az oszlop, ez az oszlop üres lesz.Alapértelmezett érték: _corrupt_record |
dateFormat Típus: String Dátumsztringek elemzésének formátuma. Alapértelmezett érték: yyyy-MM-dd |
dropFieldIfAllNull Típus: Boolean Figyelmen kívül hagyja-e az összes null értékű oszlopot, vagy üres tömböt és szerkezetet a sémakövetőség során. Alapértelmezett érték: false |
encoding vagy charset Típus: String A JSON-fájlok kódolásának neve. A lehetőségek listáját itt találja java.nio.charset.Charset . Nem használható UTF-16 és UTF-32 mikor multiline van true .Alapértelmezett érték: UTF-8 |
inferTimestamp Típus: Boolean Az időbélyeg-sztringek kipróbálása és következtetése TimestampType . Ha be van állítvatrue , a sémakövetkeztetés jelentősen tovább tarthat. Engedélyeznie cloudFiles.inferColumnTypes kell az automatikus betöltő használatát.Alapértelmezett érték: false |
lineSep Típus: String Két egymást követő JSON-rekord közötti sztring. Alapértelmezett érték: Nincs, amely a \r \r\n \n |
locale Típus: String Azonosító java.util.Locale . Befolyásolja az alapértelmezett dátumot, időbélyeget és decimális elemzést a JSON-ban.Alapértelmezett érték: US |
mode Típus: String Elemzési mód a hibásan formázott rekordok kezelése körül. Az egyik, 'PERMISSIVE' 'DROPMALFORMED' 'FAILFAST' vagy .Alapértelmezett érték: PERMISSIVE |
multiLine Típus: Boolean Azt jelzi, hogy a JSON-rekordok több sorra is kiterjednek-e. Alapértelmezett érték: false |
prefersDecimal Típus: Boolean Ha lehetséges, sztringeket próbál kikövetkeztetni DecimalType lebegőpontos vagy kettős típus helyett. Sémakövetkeztetést is használnia kell ainferSchema vagy az Automatikus betöltő használatával cloudFiles.inferColumnTypes .Alapértelmezett érték: false |
primitivesAsString Típus: Boolean Az olyan primitív típusok, mint a számok és a logikai értékek következtetése StringType .Alapértelmezett érték: false |
readerCaseSensitive Típus: Boolean A kis- és nagybetűk bizalmassági viselkedését adja meg, ha rescuedDataColumn engedélyezve van. Ha igaz, mentse azokat az adatoszlopokat, amelyeknek a neve esetenként eltér a sémától; ellenkező esetben a kis- és nagybetűket nem érzékelyítő módon olvassa be. Elérhető a Databricks Runtime-ban13.3 és újabb. Alapértelmezett érték: true |
rescuedDataColumn Típus: String Az adattípus-eltérés vagy a sémaeltérés (beleértve az oszlopházat is) miatt nem elemezhető összes adat összegyűjtése egy külön oszlopra. Ez az oszlop alapértelmezés szerint az Automatikus betöltő használata esetén jelenik meg. További részletekért lásd : Mi a mentett adatoszlop?. Alapértelmezett érték: Nincs |
timestampFormat Típus: String Az időbélyeg-sztringek elemzésének formátuma. Alapértelmezett érték: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Típus: String Az java.time.ZoneId időbélyegek és dátumok elemzésekor használandó.Alapértelmezett érték: Nincs |
CSV
beállítások
Lehetőség |
---|
badRecordsPath Típus: String A rossz CSV-rekordok adatainak rögzítésére szolgáló fájlok tárolásának elérési útja. Alapértelmezett érték: Nincs |
charToEscapeQuoteEscaping Típus: Char Az idézőjelek elől menekülő karakter. Például a következő rekordhoz: [ " a\\", b ] * Ha a feloldandó '\' karakter nincs meghatározva, a rekord nem lesz elemezve. Az elemző felolvassa a karaktereket, [a],[\],["],[,],[ ],[b] és hibát jelez, mert nem talál záró idézőjelet.* Ha a feloldandó karakter a '\' következőképpen van definiálva '\' , a rekord 2 értékkel lesz beolvasva: [a\] és [b] .Alapértelmezett érték: '\0' |
columnNameOfCorruptRecord > [! MEGJEGYZÉS] >> Az automatikus betöltő támogatott. Nem támogatott. COPY INTO Típus: String A hibásan formázott és nem elemezhető rekordok tárolására szolgáló oszlop. Ha az mode elemzéshez be van állítva DROPMALFORMED az oszlop, ez az oszlop üres lesz.Alapértelmezett érték: _corrupt_record |
comment Típus: Char Meghatározza azt a karaktert, amely egy sor megjegyzését jelöli, amikor egy szövegsor elején található. A megjegyzés kihagyásának letiltására használható '\0' .Alapértelmezett érték: '\u0000' |
dateFormat Típus: String Dátumsztringek elemzésének formátuma. Alapértelmezett érték: yyyy-MM-dd |
emptyValue Típus: String Üres érték sztring-ábrázolása. Alapértelmezett érték: "" |
encoding vagy charset Típus: String A CSV-fájlok kódolásának neve. Tekintse meg java.nio.charset.Charset a lehetőségek listáját. UTF-16 és UTF-32 nem használható, ha multiline van true .Alapértelmezett érték: UTF-8 |
enforceSchema Típus: Boolean Azt határozza meg, hogy a megadott vagy a következtetett sémát kényszerítve alkalmazza-e a CSV-fájlokra. Ha a beállítás engedélyezve van, a CSV-fájlok fejlécei figyelmen kívül lesznek hagyva. Ez a beállítás alapértelmezés szerint figyelmen kívül lesz hagyva az adatok mentésére és a sémafejlődés engedélyezésére használt Automatikus betöltő használatakor. Alapértelmezett érték: true |
escape Típus: Char Az adatok elemzésekor használandó escape karakter. Alapértelmezett érték: '\' |
header Típus: Boolean Hogy a CSV-fájlok tartalmaznak-e fejlécet. Az automatikus betöltő feltételezi, hogy a fájlok fejlécekkel rendelkeznek a séma következtetésekor. Alapértelmezett érték: false |
ignoreLeadingWhiteSpace Típus: Boolean Azt határozza meg, hogy figyelmen kívül hagyja-e az egyes elemzési értékek kezdő szóközeit. Alapértelmezett érték: false |
ignoreTrailingWhiteSpace Típus: Boolean Azt határozza meg, hogy figyelmen kívül hagyja-e az egyes elemzési értékek záró szóközeit. Alapértelmezett érték: false |
inferSchema Típus: Boolean Az elemezt CSV-rekordok adattípusainak következtetése vagy annak feltételezése, hogy az összes oszlop az StringType . Ha be van állítva true , további továbbítást igényel az adatok felett. Az Automatikus betöltőhöz használja cloudFiles.inferColumnTypes helyette.Alapértelmezett érték: false |
lineSep Típus: String Két egymást követő CSV-rekord közötti sztring. Alapértelmezett érték: Nincs, amely a \r \r\n \n |
locale Típus: String Azonosító java.util.Locale . Befolyásolja az alapértelmezett dátumot, időbélyeget és decimális elemzést a CSV-ben.Alapértelmezett érték: US |
maxCharsPerColumn Típus: Int Az értéktől az elemzésig várt karakterek maximális száma. A memóriahibák elkerülése érdekében használható. Alapértelmezett érték, -1 ami azt jelenti, hogy korlátlan.Alapértelmezett érték: -1 |
maxColumns Típus: Int Az a korlát, hogy egy rekord hány oszlopot tartalmazhat. Alapértelmezett érték: 20480 |
mergeSchema Típus: Boolean Azt határozza meg, hogy a sémát több fájlra kívánja-e következtetni, és hogy egyesítse-e az egyes fájlok sémáját. Alapértelmezés szerint engedélyezve van az Automatikus betöltőhöz a séma következtetésekor. Alapértelmezett érték: false |
mode Típus: String Elemzési mód a hibásan formázott rekordok kezelése körül. Az egyik, 'PERMISSIVE' 'DROPMALFORMED' 'FAILFAST' és .Alapértelmezett érték: PERMISSIVE |
multiLine Típus: Boolean Azt jelzi, hogy a CSV-rekordok több sorra is kiterjednek-e. Alapértelmezett érték: false |
nanValue Típus: String Nem számérték karakterlánc-ábrázolása FloatType elemzéskor és DoubleType oszlopokban.Alapértelmezett érték: "NaN" |
negativeInf Típus: String A negatív végtelen sztring-ábrázolása elemzéskor FloatType vagy DoubleType oszlopokban.Alapértelmezett érték: "-Inf" |
nullValue Típus: String Null érték sztring-ábrázolása. Alapértelmezett érték: "" |
parserCaseSensitive (elavult)Típus: Boolean Fájlok olvasása közben a fejlécben deklarált oszlopokat bizalmasan kell-e igazítani a séma-kis- és nagybetűkhöz. Ez alapértelmezés szerint az true Automatikus betöltő esetében van. Az egyes esetekben eltérő oszlopokat a rendszer az rescuedDataColumn engedélyezve lévő helyen menti. Ez a beállítás elavult a következő javára readerCaseSensitive : .Alapértelmezett érték: false |
positiveInf Típus: String A pozitív végtelen sztring-ábrázolása elemzéskor FloatType vagy DoubleType oszlopokban.Alapértelmezett érték: "Inf" |
preferDate Típus: Boolean A sztringeket időbélyeg helyett dátumként próbálja meg kikövetkelni, ha lehetséges. Sémakövetkeztetést is kell használnia, akár engedélyezéssel inferSchema , akárcloudFiles.inferColumnTypes automatikus betöltővel.Alapértelmezett érték: true |
quote Típus: Char Az olyan értékekre való meneküléshez használt karakter, ahol a mezőelválasztó az érték része. Alapértelmezett érték: " |
readerCaseSensitive Típus: Boolean A kis- és nagybetűk bizalmassági viselkedését adja meg, ha rescuedDataColumn engedélyezve van. Ha igaz, mentse azokat az adatoszlopokat, amelyeknek a neve esetenként eltér a sémától; ellenkező esetben a kis- és nagybetűket nem érzékelyítő módon olvassa be.Alapértelmezett érték: true |
rescuedDataColumn Típus: String Hogy összegyűjtse-e az összes olyan adatot, amely nem elemezhető a következő miatt: adattípus-eltérés, és sémaeltérés (beleértve az oszlopházat is) egy külön oszlopra. Ez az oszlop alapértelmezés szerint az Automatikus betöltő használata esetén jelenik meg. További részletekért lásd: Mi a mentett adatoszlop?. Alapértelmezett érték: Nincs |
sep vagy delimiter Típus: String Az elválasztó sztring oszlopok között. Alapértelmezett érték: "," |
skipRows Típus: Int A CSV-fájl elejéről figyelmen kívül hagyandó sorok száma (beleértve a megjegyzésben szereplő és az üres sorokat is). Ha header igaz, akkor a fejléc lesz az első leválasztott és nem kijelölt sor.Alapértelmezett érték: 0 |
timestampFormat Típus: String Az időbélyeg-sztringek elemzésének formátuma. Alapértelmezett érték: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Típus: String Az java.time.ZoneId időbélyegek és dátumok elemzésekor használandó.Alapértelmezett érték: Nincs |
unescapedQuoteHandling Típus: String A lezáratlan idézőjelek kezelésének stratégiája. Engedélyezett beállítások: * STOP_AT_CLOSING_QUOTE : Ha a bemenetben nem definiált idézőjelek találhatók, halmozza fel az idézőjelet, és folytassa az érték idézőjelként való elemzését, amíg meg nem talál egy záró idézőjelet.* BACK_TO_DELIMITER : Ha nem beágyazott idézőjelek találhatók a bemenetben, vegye figyelembe az értéket nem kvótált értékként. Így az elemző összegyűjti az aktuális elemzési érték összes karakterét, amíg meg nem találja az általa sep definiált elválasztó karaktert. Ha az érték nem tartalmaz elválasztójelet, az elemző a karaktereket addig halmozza a bemenetből, amíg elválasztó vagy vonalvégződés nem található.* STOP_AT_DELIMITER : Ha nem beágyazott idézőjelek találhatók a bemenetben, vegye figyelembe az értéket nem kvótált értékként. Ezzel az elemző összes karaktert halmoz fel, amíg a megadott elválasztó sep karakter vagy egy sorvégződés nem található a bemenetben.* SKIP_VALUE : Ha nem beágyazott idézőjelek találhatók a bemenetben, a program kihagyja az adott értékhez elemezett tartalmat (amíg a következő elválasztó nem található), és a beírt nullValue érték jön létre helyette.* RAISE_ERROR : Ha a bemenetben nem beágyazott idézőjelek találhatók, aTextParsingException lesz dobva.Alapértelmezett érték: STOP_AT_DELIMITER |
XML
beállítások
Lehetőség | Leírás | Hatókör |
---|---|---|
rowTag |
A sorként kezelendő XML-fájlok sorcímkéje. A példa XML-fájljában <books> <book><book>...<books> a megfelelő érték a következő book . Ez egy kötelező beállítás. |
olvasás |
samplingRatio |
A sémakövetkeztetéshez használt sorok töredékét határozza meg. Az XML beépített függvényei figyelmen kívül hagyják ezt a beállítást. Alapértelmezett: 1.0 . |
olvasás |
excludeAttribute |
Az elemek attribútumainak kizárása. Alapértelmezett: false . |
olvasás |
mode |
A sérült rekordok elemzés közbeni kezelésére szolgáló mód.PERMISSIVE : Sérült rekordok esetén a hibásan formázott sztringet egy, az által columnNameOfCorruptRecord konfigurált mezőbe helyezi, és a hibásan formázott mezőket a következőre null állítja be: . A sérült rekordok megőrzéséhez beállíthat egy string felhasználó által definiált sémában elnevezett columnNameOfCorruptRecord típusmezőt. Ha egy séma nem rendelkezik a mezővel, a rendszer az elemzés során elveti a sérült rekordokat. Séma következtetésekor az elemző implicit módon hozzáad egy mezőt egy columnNameOfCorruptRecord kimeneti sémához.DROPMALFORMED : Figyelmen kívül hagyja a sérült rekordokat. Ez a mód nem támogatott a beépített XML-függvényekhez.FAILFAST : Kivételt eredményez, ha az elemző sérült rekordokkal találkozik. |
olvasás |
inferSchema |
Ha true az eredményként kapott DataFrame-oszlopokhoz megfelelő típust próbál kikövetkeztetni. Ha false , az összes eredményként kapott oszlop típusú string . Alapértelmezett:true . Az XML beépített függvényei figyelmen kívül hagyják ezt a beállítást. |
olvasás |
columnNameOfCorruptRecord |
Lehetővé teszi az új mező átnevezését, amely egy hibásan formázott sztringet tartalmaz, amelyetPERMISSIVE üzemmód. Alapértelmezett: spark.sql.columnNameOfCorruptRecord . |
olvasás |
attributePrefix |
Az attribútumok előtagja, amely megkülönbözteti az attribútumokat az elemektől. Ez lesz a mezőnevek előtagja. Az alapértelmezett szint a _ . Az XML olvasásához üres lehet, íráshoz azonban nem. |
olvasás, írás |
valueTag |
Az attribútum(ok) vagy gyermekelem(ek) elemekkel is rendelkező elemek karakteradataihoz használt címke. A felhasználó megadhatja a mezőt a valueTag sémában, vagy automatikusan hozzáadja azt a sémakövetkeztetés során, ha a karakteradatok más elemekkel vagy attribútumokkal rendelkező elemekben vannak jelen. Alapértelmezett: _VALUE |
olvasás,írás |
encoding |
Olvasáshoz az XML-fájlokat a megadott kódolási típus szerint dekódolja. Íráshoz a mentett XML-fájlok kódolását (karakterkészletét) adja meg. Az XML beépített függvényei figyelmen kívül hagyják ezt a beállítást. Alapértelmezett: UTF-8 . |
olvasás, írás |
ignoreSurroundingSpaces |
Azt határozza meg, hogy a fehér szóközöket kihagyja-e az olvasott értékekből. Alapértelmezett: true . A rendszer figyelmen kívül hagyja a csak üres karakterek adatait. |
olvasás |
rowValidationXSDPath |
Egy opcionális XSD-fájl elérési útja, amely az EGYES sorok XML-jének ellenőrzésére szolgál. A nem érvényesíthető sorok elemzési hibákként lesznek kezelve a fenti módon. Az XSD egyébként nem befolyásolja a megadott sémát, és nem következik be. | olvasás |
ignoreNamespace |
Ha true a névterek XML-elemeken és attribútumokon lévő előtagjai figyelmen kívül lesznek hagyva. A címkéket <abc:author> és <def:author> például a címkéket úgy kezeli a rendszer, mintha mindkettő csak <author> . A névterek nem hagyhatók figyelmen kívül az elemen, csak az rowTag olvasási gyermekein. Az XML-elemzés akkor sem névtérérzékeny, ha false . Alapértelmezett: false . |
olvasás |
timestampFormat |
A datetime mintaformátumot követő egyéni időbélyeg-formátum sztringje. Ez a típusra timestamp vonatkozik. Alapértelmezett: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] . |
olvasás, írás |
timestampNTZFormat |
A dátum/idő minta formátumát követő időzóna nélküli időbélyeg egyéni formázási sztringje. Ez a TimestampNTZType típusra vonatkozik. Alapértelmezett:yyyy-MM-dd'T'HH:mm:ss[.SSS] |
olvasás, írás |
dateFormat |
A datetime mintaformátumot követő egyéni dátumformátum-sztring. Ez a dátumtípusra vonatkozik. Alapértelmezett: yyyy-MM-dd . |
olvasás, írás |
locale |
Nyelvi címkeként állít be területi beállításokat IETF BCP 47 formátumban. Például locale a dátumok és időbélyegek elemzésekor használatos. Alapértelmezett: en-US . |
olvasás |
rootTag |
Az XML-fájlok gyökércímkéje. Ebben a példában <books> <book><book>...</books> például a megfelelő érték az books . Az alapszintű attribútumokat egy olyan érték megadásával adhatja meg, mint a books foo="bar" . Alapértelmezett: ROWS . |
írás |
declaration |
Az összes kimeneti XML-fájl elején írandó XML-deklaráció tartalma a rootTag . Például az írandó okok <?xml foo?> értékefoo . Állítson be egy üres sztringet a letiltásához. Alapértelmezett: version="1.0" encoding="UTF-8" standalone="yes" . |
írás |
arrayElementName |
Annak az XML-elemnek a neve, amely egy tömbértékű oszlop minden elemét magában foglal íráskor. Alapértelmezett: item . |
írás |
nullValue |
Null érték sztring-ábrázolását állítja be. Alapértelmezett: sztring null . Ebben az esetben null az elemző nem ír attribútumokat és elemeket a mezőkhöz. |
olvasás, írás |
compression |
Fájlba mentéskor használandó tömörítési kód. Ez lehet az egyik ismert kis- és nagybetűs rövidített név (none , bzip2 , , gzip ,lz4 és snappy deflate ). Az XML beépített függvényei figyelmen kívül hagyják ezt a beállítást. Alapértelmezett: none . |
írás |
validateName |
Ha igaz, hibát jelez az XML-elemnév-érvényesítési hiba esetén. Az SQL-mezőneveknek például lehetnek szóközei, de az XML-elemnevek nem. Alapértelmezett:true . |
írás |
readerCaseSensitive |
Meghatározza a kis- és nagybetűk bizalmassági viselkedését, ha a mentettDataColumn engedélyezve van. Ha igaz, mentse azokat az adatoszlopokat, amelyeknek a neve esetenként eltér a sémától; ellenkező esetben a kis- és nagybetűket nem érzékelyítő módon olvassa be. Alapértelmezett: true . |
olvasás |
rescuedDataColumn |
Hogy összegyűjtse-e az összes olyan adatot, amelyet nem lehet elemezni az adattípus eltérése és a sémaeltérés miatt (beleértve az oszlopházat is) egy külön oszlopra. Ez az oszlop alapértelmezés szerint az Automatikus betöltő használata esetén jelenik meg. További részletekért lásd : Mi a mentett adatoszlop?. Alapértelmezett: Nincs. | olvasás |
PARQUET
beállítások
Lehetőség |
---|
datetimeRebaseMode Típus: String A JULIÁN ÉS a Prolitikus Gergely-naptárak közötti DÁTUM és IDŐBÉLYEG értékek újbóli egyeztetését szabályozza. Engedélyezett értékek: EXCEPTION , LEGACY ésCORRECTED .Alapértelmezett érték: LEGACY |
int96RebaseMode Típus: String Az INT96 időbélyeg értékeinek a Julian és a Proleptic Gergely-naptárak közötti újbóli egyeztetését szabályozza. Engedélyezett értékek: EXCEPTION , LEGACY ésCORRECTED .Alapértelmezett érték: LEGACY |
mergeSchema Típus: Boolean Azt határozza meg, hogy a sémát több fájlra kívánja-e következtetni, és hogy egyesítse-e az egyes fájlok sémáját. Alapértelmezett érték: false |
readerCaseSensitive Típus: Boolean A kis- és nagybetűk bizalmassági viselkedését adja meg, ha rescuedDataColumn engedélyezve van. Ha igaz, mentse azokat az adatoszlopokat, amelyeknek a neve esetenként eltér a sémától; ellenkező esetben a kis- és nagybetűket nem érzékelyítő módon olvassa be.Alapértelmezett érték: true |
rescuedDataColumn Típus: String Hogy összegyűjtse-e az összes olyan adatot, amely nem elemezhető a következő miatt: adattípus-eltérés, és sémaeltérés (beleértve az oszlopházat is) egy külön oszlopra. Ez az oszlop alapértelmezés szerint az Automatikus betöltő használata esetén jelenik meg. További részletekért lásd: Mi a mentett adatoszlop?. Alapértelmezett érték: Nincs |
AVRO
beállítások
Lehetőség |
---|
avroSchema Típus: String Nem kötelező séma, amelyet egy felhasználó Avro formátumban biztosít. Az Avro olvasásakor ez a beállítás beállítható egy kifejlett sémára, amely kompatibilis, de eltér a tényleges Avro-sémától. A deszerializálási séma összhangban lesz a kifejlődött sémával. Ha például egy új, alapértelmezett értékkel rendelkező oszlopot tartalmazó sémát állít be, az olvasási eredmény az új oszlopot is tartalmazza. Alapértelmezett érték: Nincs |
datetimeRebaseMode Típus: String A JULIÁN ÉS a Prolitikus Gergely-naptárak közötti DÁTUM és IDŐBÉLYEG értékek újbóli egyeztetését szabályozza. Engedélyezett értékek: EXCEPTION , LEGACY ésCORRECTED .Alapértelmezett érték: LEGACY |
mergeSchema Típus: Boolean Azt határozza meg, hogy a sémát több fájlra kívánja-e következtetni, és hogy egyesítse-e az egyes fájlok sémáját. mergeSchema az Avro nem lazítja az adattípusokat.Alapértelmezett érték: false |
readerCaseSensitive Típus: Boolean A kis- és nagybetűk bizalmassági viselkedését adja meg, ha rescuedDataColumn engedélyezve van. Ha igaz, mentse azokat az adatoszlopokat, amelyeknek a neve esetenként eltér a sémától; ellenkező esetben a kis- és nagybetűket nem érzékelyítő módon olvassa be.Alapértelmezett érték: true |
rescuedDataColumn Típus: String Hogy összegyűjtse-e az összes olyan adatot, amely nem elemezhető a következő miatt: adattípus-eltérés, és sémaeltérés (beleértve az oszlopházat is) egy külön oszlopra. Ez az oszlop alapértelmezés szerint az Automatikus betöltő használata esetén jelenik meg. További részletekért lásd: Mi a mentett adatoszlop?. Alapértelmezett érték: Nincs |
BINARYFILE
beállítások
A bináris fájlok nem rendelkeznek további konfigurációs lehetőségekkel.
TEXT
beállítások
Lehetőség |
---|
encoding Típus: String A SZÖVEGfájlok kódolásának neve. A lehetőségek listáját itt találja java.nio.charset.Charset .Alapértelmezett érték: UTF-8 |
lineSep Típus: String Két egymást követő SZÖVEG rekord közötti sztring. Alapértelmezett érték: Nincs, amely a \r \r\n \n |
wholeText Típus: Boolean Egy fájl beolvasása egyetlen rekordként. Alapértelmezett érték: false |
ORC
beállítások
Lehetőség |
---|
mergeSchema Típus: Boolean Azt határozza meg, hogy a sémát több fájlra kívánja-e következtetni, és hogy egyesítse-e az egyes fájlok sémáját. Alapértelmezett érték: false |
Kapcsolódó cikkek
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: