Sdílet prostřednictvím


COPY INTO

Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Načte data z umístění souboru do Delta table. Jedná se o operaci opakovatelnou a idempotentní – soubory ve zdrojovém umístění, které již byly načteny, se přeskočí. To platí i v případě, že byly soubory od jejich načtení změněny. Příklady naleznete v části běžné vzory načítání dat pomocí COPY INTO.

Syntaxe

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) ] ) ]

Parameters

  • target_table

    Identifikuje existující Delta table. Target_table nesmí obsahovat dočasnou specifikaci ani specifikaci možností.

    Pokud je název table uveden ve formě umístění, jako například: delta.`/path/to/table` , může Unity Catalog řídit přístup k zapisovaným umístěním. Do externího umístění můžete zapisovat pomocí:

    • Definujte umístění jako vnější umístění a nastavte havingWRITE FILES oprávnění pro toto externí umístění.
    • Having WRITE FILES oprávnění k pojmenovaným přihlašovacím údajům úložiště, která poskytují autorizaci k zápisu do umístění pomocí: COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)

    Další podrobnosti najdete v tématu Připojení ke cloudovému úložišti objektů a službám pomocí unity Catalog.

  • BY POSITION | ( col_name [ , <col_name> ... ] )

    Odpovídá zdroji columns k cíli tablecolumns podle pořadí. Přetypování objektu columns, které odpovídá, je provedeno automaticky.

    Tento parametr je podporován pouze pro formát souboru CSV bez záhlaví. Je nutné zadat FILEFORMAT = CSV. FORMAT_OPTIONS musí být také set("headers" = "false") (výchozí nastavení jeFORMAT_OPTIONS ("headers" = "false")).

    Možnost syntaxe 1: BY POSITION

    • Automaticky přiřazuje zdroj columns k cíli tablecolumns podle řadové pozice.
      • Pro porovnávání se nepoužívá výchozí porovnávání názvů.
      • IDENTITY columns a GENERATEDcolumns cílového table se při porovnávání zdrojového columnsignorují .
      • Pokud se počet zdroje columns nerovná filtrovaným cílovým tablecolumns, COPY INTO vyvolá chybu.

    Možnost syntaxe 2: ( col_name [ , <col_name> ... ] )

    • Porovná zdroj columns se zadaným cílem tablecolumns podle relativní polohy pomocí názvu cíle tablecolumnlist, uvedeného v závorkách a odděleného čárkami.
      • Původní tablecolumn pořadí a názvy column se pro porovnávání nepoužívají.
      • IDENTITY columns a GENERATEDcolumns nelze zadat v názvu columnlist, jinak COPY INTO vyvolá chybu.
      • Zadaný columns nelze duplikovat.
      • Pokud se počet zdrojových columns nerovná zadanému tablecolumns, COPY INTO vyvolá chybu.
      • Pro columns, které nejsou specifikovány v názvu columnlist, COPY INTO přiřadí výchozí values, pokud nějaké jsou, jinak přiřadí NULL. Pokud některý column nemá hodnotu null, COPY INTO vyvolá chybu.
  • source

    Umístění souboru, ze které se mají načíst data. Soubory v tomto umístění musí mít formát zadaný v FILEFORMAT. Umístění je k dispozici ve formě identifikátoru URI.

    Přístup ke zdrojovému umístění je možné poskytnout prostřednictvím:

    • credential_name

      Volitelný název přihlašovacích údajů, které se používají pro přístup k umístění úložiště nebo k zápisu do tohoto umístění. Tyto přihlašovací údaje použijete jenom v případě, že umístění souboru není součástí externího umístění. Viz credential_name.

    • Dočasně vloženo credentials.

    • Definování zdrojového umístění jako externího umístění a nastavení oprávnění havingREAD FILES k externímu umístění prostřednictvím Unity Catalog.

    • Použití pojmenovaných přihlašovacích údajů úložiště s oprávněními READ FILES, která poskytují autorizaci ke čtení z umístění prostřednictvím Unity Catalog.

    Pokud je cesta už definovaná jako externí umístění, které máte oprávnění použít, nemusíte zadávat řádkové ani pojmenované credentials. Další podrobnosti najdete v tématu Vytvoření externího umístění pro připojení cloudového úložiště k Azure Databricks .

    Poznámka:

    Pokud je cesta ke zdrojovému souboru kořenovou cestou, přidejte lomítko (/) na konec cesty k souboru, s3://my-bucket/například .

    Mezi akceptované možnosti přihlašovacích údajů patří:

    • AZURE_SAS_TOKEN pro ADLS Gen2 a Azure Blob Storage
    • AWS_ACCESS_KEY, AWS_SECRET_KEYa AWS_SESSION_TOKEN pro AWS S3

    Akceptované možnosti šifrování jsou:

    • TYPE = 'AWS_SSE_C'a MASTER_KEY pro AWS S3

Viz Načtení dat pomocí COPY INTO s dočasnými credentials.

  • SELECT expression_list

    Nejprve ze zdrojových dat vybere zadanou columns nebo výrazy, a poté zkopíruje do Delta table. Výrazy můžou být cokoli, co používáte s příkazy SELECT, včetně operací window. Agregační výrazy můžete použít jenom pro globální agregace – s touto syntaxí nemůžete GROUP BY na columns.

  • FILEFORMAT = data_source

    Formát zdrojových souborů, které se mají načíst. Jeden z CSV, , JSON, AVROORC, PARQUET, TEXT, BINARYFILE.

  • VALIDATE

    Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 10.4 LTS a vyšší

    Data, která se mají načíst do table, jsou ověřena, ale nejsou zapsána do table. Mezi tato ověření patří:

    • Určuje, jestli se data dají analyzovat.
    • Zda schema odpovídá table nebo jestli je potřeba schema vyvíjet.
    • Zda jsou splněna všechna omezení null a kontroly.

    Výchozí možností je ověřit všechna data, která se mají načíst. Pomocí klíčového ROWS slova můžete zadat několik řádků, které se mají ověřit, například VALIDATE 15 ROWS. Příkaz COPY INTO vrátí náhled dat o 50 řádcích nebo méně, pokud se s klíčovým slovem ROWS použije číslo menší než 50).

  • FILES

    list názvů souborů k načtení, s počtem limit souborů 1 000. Nelze zadat pomocí parametru PATTERN.

  • PATTERN

    Vzor globu, který identifikuje soubory, které se mají načíst ze zdrojového adresáře. Nelze zadat pomocí parametru FILES.

    Vzor Popis
    ? Odpovídá jakémukoli jednomu znaku.
    * Odpovídá nule nebo více znaků
    [abc] Odpovídá jednomu znaku ze znaku set {a,b,c}.
    [a-z] Odpovídá jednomu znaku z rozsahu znaků {a... z}.
    [^a] Odpovídá jednomu znaku, který není z znaku set nebo rozsahu {a}. Všimněte si, že ^ znak musí nastat okamžitě napravo od levé závorky.
    {ab,cd} Odpovídá řetězci z řetězce set {ab, cd}.
    {ab,c{de, fh}} Shoduje se s řetězcem z množiny set {ab, cde, cfh}.
  • FORMAT_OPTIONS

    Možnosti, které se mají předat čtenáři zdroje dat Apache Sparku pro zadaný formát Viz Možnosti formátování pro každý formát souboru.

  • COPY_OPTIONS

    Možnosti řízení operace COPY INTO příkazu

    • force: logická hodnota, výchozí false. Pokud je set do true, je idempotentnost zakázána a soubory se načtou bez ohledu na to, jestli byly načteny dříve.
    • mergeSchema: logická hodnota, výchozí false. Pokud je set až true, schema lze vyvíjet podle příchozích dat.

Souběžné vyvolání COPY INTO

COPY INTO podporuje souběžné vyvolání proti stejné table. Pokud se COPY INTO vyvolá souběžně na odlišných sadách vstupních souborů, mělo by každé vyvolání nakonec proběhnout úspěšně, jinak get konflikt transakce. COPY INTO by nemělo být vyvoláno souběžně za účelem zlepšení výkonu; Jeden COPY INTO příkaz s více soubory obvykle funguje lépe než spouštění souběžných COPY INTO příkazů s jedním souborem. COPY INTO lze volat souběžně, pokud:

  • Několik výrobců dat nemá snadný způsob, jak koordinovat a nemůže provést jediné vyvolání.
  • Pokud je možné ingestovat podadresáři velmi velký adresář podle podadresáři. Při ingestování adresářů s velkým počtem souborů doporučuje Databricks používat automatické zavaděče , pokud je to možné.

Přístupová metadata souborů

Informace o přístupu k metadatům pro souborové zdroje dat najdete v tématu Metadata souboru column.

Možnosti formátu

Obecné možnosti

Následující možnosti platí pro všechny formáty souborů.

Možnost
ignoreCorruptFiles

Typ: Boolean

Zda se mají ignorovat poškozené soubory. Pokud je hodnota true, úlohy Sparku se budou dál spouštět při výskytu poškozených souborů a obsah, který jste si přečetli, se vrátí. Pozorovatelný jako numSkippedCorruptFiles v
Historie Delta Lake operationMetricscolumn. K dispozici ve službě Databricks Runtime 11.3 LTS a vyšší.

Výchozí hodnota: false
ignoreMissingFiles

Typ: Boolean

Zda se mají ignorovat chybějící soubory. Pokud je hodnota true, úlohy Sparku se budou dál spouštět při výskytu chybějících souborů a obsah, který byl přečtený, se vrátí. K dispozici ve službě Databricks Runtime 11.3 LTS a vyšší.

Výchozí hodnota: false (true pro COPY INTO)
modifiedAfter

Zadejte: Timestamp Stringnapříklad 2021-01-01 00:00:00.000000 UTC+0

Volitelné časové razítko pro ingestování souborů, které mají časové razítko změny po zadaném časovém razítku.

Výchozí hodnota: None
modifiedBefore

Zadejte: Timestamp Stringnapříklad 2021-01-01 00:00:00.000000 UTC+0

Volitelné časové razítko pro ingestování souborů, které mají časové razítko změny před zadaným časovým razítkem.

Výchozí hodnota: None
pathGlobFilter nebo fileNamePattern

Typ: String

Potenciální vzor globu, který se má poskytnout pro výběr souborů. Ekvivalent k
PATTERN v COPY INTO. fileNamePattern lze použít v read_files.

Výchozí hodnota: None
recursiveFileLookup

Typ: Boolean

Zda se má během partition odvozování přeskočit schema odvozování. To nemá vliv na to, které soubory jsou načteny.

Výchozí hodnota: false

JSON volby

Možnost
allowBackslashEscapingAnyCharacter

Typ: Boolean

Zda povolit zpětné lomítko řídicí libovolný znak, který je úspěšný. Pokud není povoleno, můžou být řídicí znaky, které jsou explicitně uvedeny ve specifikaci JSON.

Výchozí hodnota: false
allowComments

Typ: Boolean

Bez ohledu na to, jestli chcete povolit použití komentářů ke stylu Jazyka Java, C a C++ ('/', '*'a '//' odrůd) v rámci analyzovaného obsahu, nebo ne.

Výchozí hodnota: false
allowNonNumericNumbers

Typ: Boolean

Zda povolit set tokeny typu není číslo (NaN) jako platná desetinná čísla values.

Výchozí hodnota: true
allowNumericLeadingZeros

Typ: Boolean

Určuje, jestli chcete, aby integrální čísla začínala dalšími (ignorovatelnými) nulami (například 000001).

Výchozí hodnota: false
allowSingleQuotes

Typ: Boolean

Zda povolit použití jednoduchých uvozovek (apostrof, znak '\') pro citace řetězců (názvů a řetězců values).

Výchozí hodnota: true
allowUnquotedControlChars

Typ: Boolean

Jestli chcete povolit, aby řetězce JSON obsahovaly nepotřebné řídicí znaky (ZNAKY ASCII s hodnotou menší než 32, včetně znaků tabulátoru a odřádkování), nebo ne.

Výchozí hodnota: false
allowUnquotedFieldNames

Typ: Boolean

Určuje, jestli chcete povolit použití necitovaných názvů polí (které jsou povoleny JavaScriptem, ale ne specifikací JSON).

Výchozí hodnota: false
badRecordsPath

Typ: String

Cesta k ukládání souborů pro záznam informací o špatných záznamech JSON.

Výchozí hodnota: None
columnNameOfCorruptRecord

Typ: String

column pro ukládání záznamů, které jsou poškozené a nelze je analyzovat. Pokud je mode pro analýzu set jako DROPMALFORMED, bude tato column prázdná.

Výchozí hodnota: _corrupt_record
dateFormat

Typ: String

Formát pro analýzu řetězců kalendářních dat.

Výchozí hodnota: yyyy-MM-dd
dropFieldIfAllNull

Typ: Boolean

Zda se mají ignorovat columns všech values null nebo prázdných polí a struktur během schema odvození.

Výchozí hodnota: false
encoding nebo charset

Typ: String

Název kódování souborů JSON. Informace o java.nio.charset.Charset možností najdete v list. Nelze použít UTF-16 a UTF-32 kdy multiline je true.

Výchozí hodnota: UTF-8
inferTimestamp

Typ: Boolean

Zda vyzkoušet a odvodit řetězce časového razítka TimestampTypejako . Když set do
true, schema odvození může trvat výrazně déle. Musíte povolit cloudFiles.inferColumnTypes použití s automatickým zavaděčem.

Výchozí hodnota: false
lineSep

Typ: String

Řetězec mezi dvěma po sobě jdoucími záznamy JSON.

Výchozí hodnota: Žádný, který pokrývá \r, \r\na \n
locale

Typ: String

java.util.Locale identifier. Ovlivňuje výchozí datum, časové razítko a parsování desetinných míst v rámci JSON.

Výchozí hodnota: US
mode

Typ: String

Režim analyzátoru pro zpracování poškozených záznamů Jeden z , z 'PERMISSIVE',
'DROPMALFORMED'nebo 'FAILFAST'.

Výchozí hodnota: PERMISSIVE
multiLine

Typ: Boolean

Určuje, jestli záznamy JSON pokrývají více řádků.

Výchozí hodnota: false
prefersDecimal

Typ: Boolean

Pokud je to možné, pokusí se řetězce odvodit jako DecimalType plovoucí nebo dvojitý typ. Musíte také použít schema odvozování, a to buď povolením
inferSchema nebo s cloudFiles.inferColumnTypes automatickým zavaděčem.

Výchozí hodnota: false
primitivesAsString

Typ: Boolean

Zda odvodit primitivní typy, jako jsou čísla a logické hodnoty jako StringType.

Výchozí hodnota: false
readerCaseSensitive

Typ: Boolean

Určuje chování citlivosti případu, pokud rescuedDataColumn je povoleno. Pokud je pravda, zachrání data columns, jejichž názvy se liší pouze velikostí písmen od schema, jinak čte data bez rozlišování velkých a malých písmen. K dispozici v Databricks Runtime
13.3 a vyšší.

Výchozí hodnota: true
rescuedDataColumn

Typ: String

Zda se mají shromažďovat všechna data, která nelze parsovat kvůli neshodě datového typu nebo neshodě schema (včetně velikosti písma column) do samostatné oblasti column. Výchozí nastavení zahrnuje tuto column při použití automatického zavaděče. Další podrobnosti najdete v tématu Co jsou zachráněná data column?.

Výchozí hodnota: None
singleVariantColumn

Typ: String

Určuje, jestli se má ingestovat celý dokument JSON, parsovaný do jednoho column Variant s daným řetězcem jako názvem column. Pokud je tato možnost zakázaná, pole JSON budou zahrnuta do jejich vlastních columns.

Výchozí hodnota: None
timestampFormat

Typ: String

Formát pro analýzu řetězců časových razítek.

Výchozí hodnota: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Typ: String

Používá java.time.ZoneId se při analýze časových razítek a kalendářních dat.

Výchozí hodnota: None

CSV volby

Možnost
badRecordsPath

Typ: String

Cesta k ukládání souborů pro záznam informací o špatných záznamech CSV.

Výchozí hodnota: None
charToEscapeQuoteEscaping

Typ: Char

Znak použitý k řídicímu znaku použitému pro uvozovky. Například pro následující záznam: [ " a\\", b ]

- Pokud je znak k řídicímu znaku '\' nedefinovaný, záznam nebude analyzován. Analyzátor přečte znaky: [a],[\],["],[,],[ ],[b] a vyvolá chybu, protože nemůže najít pravou uvozovku.
- Pokud je znak pro únik z '\' definován jako '\', záznam bude přečten pomocí 2 values: [a\] a [b].

Výchozí hodnota: '\0'
columnNameOfCorruptRecord

Je podporováno pro Automatický Zavaděč. Nepodporuje se pro COPY INTO.

Typ: String

column pro ukládání záznamů, které jsou poškozené a nelze je analyzovat. Pokud je mode pro analýzu set jako DROPMALFORMED, bude tato column prázdná.

Výchozí hodnota: _corrupt_record
comment

Typ: Char

Definuje znak, který představuje komentář řádku při nalezení na začátku řádku textu. Slouží '\0' k zakázání vynechání komentářů.

Výchozí hodnota: '\u0000'
dateFormat

Typ: String

Formát pro analýzu řetězců kalendářních dat.

Výchozí hodnota: yyyy-MM-dd
emptyValue

Typ: String

Řetězcové znázornění prázdné hodnoty

Výchozí hodnota: ""
encoding nebo charset

Typ: String

Název kódování souborů CSV. Informace o java.nio.charset.Charset možností najdete v list. UTF-16 a UTF-32 nelze ji použít, pokud multiline je true.

Výchozí hodnota: UTF-8
enforceSchema

Typ: Boolean

Zda vynutit použití zadaného nebo automaticky odvozeného schema u souborů CSV. Pokud je tato možnost povolená, záhlaví souborů CSV se ignorují. Tato možnost se ve výchozím nastavení ignoruje při použití Auto Loaderu k obnově dat a povolení evoluce schema.

Výchozí hodnota: true
escape

Typ: Char

Řídicí znak, který se má použít při analýze dat.

Výchozí hodnota: '\'
header

Typ: Boolean

Určuje, jestli soubory CSV obsahují záhlaví. Auto Loader předpokládá, že soubory mají hlavičky při odvození schema.

Výchozí hodnota: false
ignoreLeadingWhiteSpace

Typ: Boolean

Zda se mají ignorovat úvodní prázdné znaky pro každou analyzovanou hodnotu.

Výchozí hodnota: false
ignoreTrailingWhiteSpace

Typ: Boolean

Zda se mají ignorovat koncové prázdné znaky pro každou analyzovanou hodnotu.

Výchozí hodnota: false
inferSchema

Typ: Boolean

Zda odvodit datové typy z analyzovaných záznamů CSV, nebo předpokládat, že všechny columns jsou StringType. Vyžaduje další předávání dat, pokud settrue. V případě automatického zavaděče použijte cloudFiles.inferColumnTypes místo toho.

Výchozí hodnota: false
lineSep

Typ: String

Řetězec mezi dvěma po sobě jdoucími záznamy CSV.

Výchozí hodnota: Žádný, který pokrývá \r, \r\na \n
locale

Typ: String

java.util.Locale identifier. Ovlivňuje výchozí datum, časové razítko a parsování desetinných míst v rámci sdíleného svazku clusteru.

Výchozí hodnota: US
maxCharsPerColumn

Typ: Int

Maximální počet znaků očekávaných od hodnoty k analýze Lze použít k zabránění chybám paměti. Výchozí hodnota -1znamená neomezenou hodnotu.

Výchozí hodnota: -1
maxColumns

Typ: Int

Těžké limit toho, kolik columns záznam může mít.

Výchozí hodnota: 20480
mergeSchema

Typ: Boolean

Zda chcete odvodit schema napříč více soubory a sloučit schema každého souboru. Při odvozování schemaje ve výchozím nastavení povolen automatický zavaděč .

Výchozí hodnota: false
mode

Typ: String

Režim analyzátoru pro zpracování poškozených záznamů Jeden z , z 'PERMISSIVE',
'DROPMALFORMED'a 'FAILFAST'.

Výchozí hodnota: PERMISSIVE
multiLine

Typ: Boolean

Určuje, jestli záznamy CSV pokrývají více řádků.

Výchozí hodnota: false
nanValue

Typ: String

Řetězcové vyjádření hodnoty, která není číselnou hodnotou, při zpracování FloatType a DoubleTypecolumns.

Výchozí hodnota: "NaN"
negativeInf

Typ: String

Řetězcové znázornění záporného nekonečna při analýze FloatType nebo DoubleTypecolumns.

Výchozí hodnota: "-Inf"
nullValue

Typ: String

Řetězcové vyjádření hodnoty null

Výchozí hodnota: ""
parserCaseSensitive (zastaralé)

Typ: Boolean

Chcete při čtení souborů zarovnat columns deklarované v záhlaví s schema s ohledem na velká a malá písmena? Toto nastavení je true ve výchozím nastavení automatického zavaděče. Columns, které se liší velikostí písmen, budou v rescuedDataColumn zachráněny, pokud je povoleno. Tato možnost byla zastaralá ve prospěch readerCaseSensitive.

Výchozí hodnota: false
positiveInf

Typ: String

Řetězcové vyjádření kladného nekonečna při parsování FloatType nebo DoubleTypecolumns.

Výchozí hodnota: "Inf"
preferDate

Typ: Boolean

Pokusí se odvodit řetězce jako kalendářní data místo časového razítka, pokud je to možné. Musíte také použít schema odvozování, a to buď povolením inferSchema, nebo použitím
cloudFiles.inferColumnTypes s automatickým zavaděčem.

Výchozí hodnota: true
quote

Typ: Char

Znak použitý pro unikání oddělovače polí valueswhere je součástí hodnoty.

Výchozí hodnota: "
readerCaseSensitive

Typ: Boolean

Určuje chování citlivosti případu, pokud rescuedDataColumn je povoleno. Pokud je pravda, zachrání data columns, jejichž názvy se liší pouze velikostí písmen od schema, jinak čte data bez rozlišování velkých a malých písmen.

Výchozí hodnota: true
rescuedDataColumn

Typ: String

Zda se mají shromažďovat všechna data, která nelze parsovat z důvodu neshody datového typu, a neshody schema (včetně column velikosti písma) na samostatný column. Výchozí nastavení zahrnuje tuto column při použití automatického zavaděče. Další podrobnosti najdete v tématu Co jsou záchranná data column?.

Výchozí hodnota: None
sep nebo delimiter

Typ: String

Řetězec oddělovače mezi columns.

Výchozí hodnota: ","
skipRows

Typ: Int

Počet řádků od začátku souboru CSV, které by se měly ignorovat (včetně komentářů a prázdných řádků). Pokud header je hodnota true, záhlaví bude první vynechaný a nekommentovaný řádek.

Výchozí hodnota: 0
timestampFormat

Typ: String

Formát pro analýzu řetězců časových razítek.

Výchozí hodnota: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Typ: String

Používá java.time.ZoneId se při analýze časových razítek a kalendářních dat.

Výchozí hodnota: None
unescapedQuoteHandling

Typ: String

Strategie pro zpracování nepotřebných uvozovek. Povolené možnosti:

- STOP_AT_CLOSING_QUOTE: Pokud jsou ve vstupu nalezeny neuskutečené uvozovky, nashromážděte znak uvozovky a pokračujte parsováním hodnoty jako uvozovky, dokud se nenajde pravá uvozovka.
- BACK_TO_DELIMITER: Pokud jsou ve vstupu nalezeny neuskutečené uvozovky, zvažte hodnotu jako necitovanou hodnotu. Tím se analyzátoru nahromáždí všechny znaky aktuální analyzované hodnoty, dokud se nenajde oddělovač definovaný pomocí sep . Pokud se v hodnotě nenajde žádný oddělovač, analyzátor bude pokračovat ve shromažďování znaků ze vstupu, dokud se nenajde oddělovač nebo konec řádku.
- STOP_AT_DELIMITER: Pokud jsou ve vstupu nalezeny neuskutečené uvozovky, zvažte hodnotu jako necitovanou hodnotu. Tím se analyzátoru nahromáždí všechny znaky, dokud se ve vstupu nenajde oddělovač definovaný oddělovačem sepnebo konce řádku.
- SKIP_VALUE: Pokud jsou ve vstupu nalezeny neescapované uvozovky, obsah určený pro danou hodnotu se přeskočí (dokud se nenajde další oddělovač) a místo toho bude vytvořena hodnota set v nullValue.
- RAISE_ERROR: Pokud jsou ve vstupu nalezeny neuskutečené uvozovky,
TextParsingException bude vyvolán.

Výchozí hodnota: STOP_AT_DELIMITER

XML volby

Možnost Popis Obor
rowTag Značka řádku souborů XML, která má být považována za řádek. V příkladu XML <books> <book><book>...<books>je bookpříslušná hodnota . Tato možnost je povinná. přečteno
samplingRatio Definuje podíl řádků použitý pro inferenční metody schema. Předdefinované funkce XML tuto možnost ignorují. Výchozí hodnota: 1.0. přečteno
excludeAttribute Zda vyloučit atributy v prvcích. Výchozí hodnota: false. přečteno
mode Režim práce s poškozenými záznamy během analýzy

PERMISSIVE: U poškozených záznamů umístí poškozený řetězec do pole nakonfigurovaného columnNameOfCorruptRecordpomocí a nastaví poškozená pole na nullhodnotu . Chcete-li zachovat poškozené záznamy, můžete set pole typu string s názvem columnNameOfCorruptRecord v uživatelsky definovaném schema. Pokud schema nemá pole, během analýzy se zahodí poškozené záznamy. Při odvození schemaanalyzátor implicitně přidá pole columnNameOfCorruptRecord ve výstupním schema.

DROPMALFORMED: Ignoruje poškozené záznamy. Tento režim není podporován pro předdefinované funkce XML.

FAILFAST: Vyvolá výjimku, když analyzátor splňuje poškozené záznamy.
přečteno
inferSchema Pokud true, pokusí se odvodit odpovídající typ pro každý výsledný datový rámec column. Pokud false, všechny výsledné columns jsou typu string. Výchozí:
true. Předdefinované funkce XML tuto možnost ignorují.
přečteno
columnNameOfCorruptRecord Umožňuje přejmenování nového pole, které obsahuje poškozený řetězec vytvořený uživatelem
PERMISSIVE režim. Výchozí hodnota: spark.sql.columnNameOfCorruptRecord.
přečteno
attributePrefix Předpona atributů k rozlišení atributů od prvků. Toto bude předpona pro názvy polí. Výchozí hodnota je _. Může být prázdný pro čtení XML, ale ne pro zápis. čtení, zápis
valueTag Značka použitá pro data znaků v elementech, které mají také atributy nebo podřízené elementy. Uživatel může zadat pole valueTag v rámci schema, nebo bude automaticky přidáno během procesu schema, pokud jsou znaky přítomné v prvcích společně s dalšími prvky nebo atributy. Výchozí: _VALUE čtení, zápis
encoding Pro čtení dekóduje soubory XML daným typem kódování. Pro zápis určuje kódování (znakovou sadu) uložených souborů XML. Předdefinované funkce XML tuto možnost ignorují. Výchozí hodnota: UTF-8. čtení, zápis
ignoreSurroundingSpaces Definuje, zda mají být při čtení z values vynechány okolní prázdné znaky. Výchozí hodnota: true. Data znaků pouze prázdných znaků se ignorují. přečteno
rowValidationXSDPath Cesta k volitelnému souboru XSD, který se používá k ověření XML pro každý řádek jednotlivě. Řádky, které se nepodaří ověřit, se považují za parsované chyby jako výše. XSD neovlivňuje jinak poskytnuté nebo odvozené schema. přečteno
ignoreNamespace Pokud truejsou předpony oborů názvů u elementů a atributů XML ignorovány. Značky <abc:author> a <def:author>, například, jsou považovány za to, že oba jsou jen <author>. Obory názvů nelze u elementu rowTag ignorovat, pouze jeho podřízené položky pro čtení. Analýza XML není v oboru názvů ani v případě, že false. Výchozí hodnota: false. přečteno
timestampFormat Vlastní řetězec formátu časového razítka, který se řídí formátem vzoru data a času. To platí pro timestamp typ. Výchozí hodnota: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. čtení, zápis
timestampNTZFormat Řetězec vlastního formátu pro časové razítko bez timezone, který se řídí formátem vzoru data a času. To platí pro typ TimestampNTZType. Výchozí:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
čtení, zápis
dateFormat Vlastní řetězec formátu data, který se řídí formátem vzoru datetime. To platí pro typ data. Výchozí hodnota: yyyy-MM-dd. čtení, zápis
locale Nastaví národní prostředí jako značku jazyka ve formátu IETF BCP 47. Používá se například locale při analýze kalendářních dat a časových razítek. Výchozí hodnota: en-US. přečteno
rootTag Kořenová značka souborů XML. Například v <books> <book><book>...</books>, odpovídající hodnota je books. Základní atributy můžete zahrnout zadáním hodnoty, jako books foo="bar"je . Výchozí hodnota: ROWS. zápis
declaration Obsah deklarace XML pro zápis na začátku každého výstupního souboru XML před rootTag. Například hodnota foo příčin <?xml foo?> , které se mají zapsat. Set nastavte na prázdný řetězec, aby byl potlačen. Výchozí: version="1.0"
encoding="UTF-8" standalone="yes".
zápis
arrayElementName Název elementu XML, který při psaní uzavře každý prvek pole s hodnotou column. Výchozí hodnota: item. zápis
nullValue Nastaví řetězcovou reprezentaci hodnoty null. Výchozí hodnota: řetězec null. V takovém případě nullanalyzátor nezapisuje atributy a prvky pro pole. čtení, zápis
compression Komprimační kód, který se použije při ukládání do souboru. Může to být jeden ze známých zkrácených názvů bez rozlišování velkých a malých písmen (none, , bzip2gzip,lz4 , snappya)
deflate). Předdefinované funkce XML tuto možnost ignorují. Výchozí hodnota: none.
zápis
validateName Pokud je true, vyvolá chybu při ověření názvu elementu XML. Například názvy polí SQL můžou mít mezery, ale názvy elementů XML nemohou. Výchozí:
true.
zápis
readerCaseSensitive Určuje chování citlivosti případu při povolení rescuedDataColumn. Pokud je pravda, zachrání data columns, jejichž názvy se liší pouze velikostí písmen od schema, jinak čte data bez rozlišování velkých a malých písmen. Výchozí hodnota: true. přečteno
rescuedDataColumn Zda se mají shromažďovat všechna data, která nelze zpracovat z důvodu neshody datového typu a neshody schema (včetně rozdílného psaní column) do samostatného column. Výchozí nastavení zahrnuje tuto column při použití automatického zavaděče. Další podrobnosti najdete v tématu Co jsou záchranná data column?. Výchozí hodnota: Žádné. přečteno

PARQUET volby

Možnost
datetimeRebaseMode

Typ: String

Řídí přesunutí základu DATA a TIMESTAMP values mezi juliánským a proleptickým gregoriánským kalendářem. Povolené values: EXCEPTION, LEGACYa
CORRECTED.

Výchozí hodnota: LEGACY
int96RebaseMode

Typ: String

Řídí převedení časového razítka INT96 values mezi juliánským a proleptickým gregoriánským kalendářem. Povolené values: EXCEPTION, LEGACYa
CORRECTED.

Výchozí hodnota: LEGACY
mergeSchema

Typ: Boolean

Zda chcete odvodit schema napříč více soubory a sloučit schema každého souboru.

Výchozí hodnota: false
readerCaseSensitive

Typ: Boolean

Určuje chování citlivosti případu, pokud rescuedDataColumn je povoleno. Pokud je pravda, zachrání data columns, jejichž názvy se liší pouze velikostí písmen od schema, jinak čte data bez rozlišování velkých a malých písmen.

Výchozí hodnota: true
rescuedDataColumn

Typ: String

Zda se mají shromažďovat všechna data, která nelze parsovat z důvodu neshody datového typu, a neshody schema (včetně column velikosti písma) na samostatný column. Výchozí nastavení zahrnuje tuto column při použití automatického zavaděče. Další podrobnosti najdete v tématu Co jsou záchranná data column?.

Výchozí hodnota: None

AVRO volby

Možnost
avroSchema

Typ: String

Volitelné schema poskytnuté uživatelem ve formátu Avro. Při čtení Avro se dá možnost set převést na vyvíjený schema, který je kompatibilní, ale odlišný od skutečného Avro schema. Deserializace schema bude konzistentní s rozvinutým schema. Pokud například set vyvíjený schema obsahující jeden další column s výchozí hodnotou, výsledek čtení bude obsahovat také nový column.

Výchozí hodnota: None
datetimeRebaseMode

Typ: String

Řídí přesunutí základu DATA a TIMESTAMP values mezi juliánským a proleptickým gregoriánským kalendářem. Povolené values: EXCEPTION, LEGACYa
CORRECTED.

Výchozí hodnota: LEGACY
mergeSchema

Typ: Boolean

Zda chcete odvodit schema napříč více soubory a sloučit schema každého souboru.
mergeSchema pro Avro neuvolní datové typy.

Výchozí hodnota: false
readerCaseSensitive

Typ: Boolean

Určuje chování citlivosti případu, pokud rescuedDataColumn je povoleno. Pokud je pravda, zachrání data columns, jejichž názvy se liší pouze velikostí písmen od schema, jinak čte data bez rozlišování velkých a malých písmen.

Výchozí hodnota: true
rescuedDataColumn

Typ: String

Zda se mají shromažďovat všechna data, která nelze parsovat z důvodu neshody datového typu, a neshody schema (včetně column velikosti písma) na samostatný column. Výchozí nastavení zahrnuje tuto column při použití automatického zavaděče. Další podrobnosti najdete v tématu Co jsou záchranná data column?.

Výchozí hodnota: None

BINARYFILE volby

Binární soubory nemají žádné další možnosti konfigurace.

TEXT volby

Možnost
encoding

Typ: String

Název kódování souborů TEXT. Informace o java.nio.charset.Charset možností najdete v list.

Výchozí hodnota: UTF-8
lineSep

Typ: String

Řetězec mezi dvěma po sobě jdoucími záznamy TEXT.

Výchozí hodnota: Žádný, který pokrývá \r, \r\n a \n
wholeText

Typ: Boolean

Určuje, jestli se má soubor číst jako jeden záznam.

Výchozí hodnota: false

ORC volby

Možnost
mergeSchema

Typ: Boolean

Zda chcete odvodit schema napříč více soubory a sloučit schema každého souboru.

Výchozí hodnota: false