Dela via


COPY INTO

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime

Läser in data från en filplats till en Delta-tabell. Det här är en återförsöksbar och idempotent åtgärd – Filer i källan som redan har lästs in skippas. Detta gäller även om filerna har ändrats sedan de lästes in. Exempel finns i Vanliga datainläsningsmönster med hjälp av COPY INTO.

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

Parametrar

  • target_table

    Identifierar en befintlig Delta-tabell. Target_table får inte innehålla någon specifikation för tidsmässiga specifikationer eller alternativ.

    Om tabellnamnet anges i form av en plats, till exempel: delta.`/path/to/table` , kan Unity Catalog styra åtkomsten till de platser som skrivs till. Du kan skriva till en extern plats genom att:

    • Definiera platsen som en extern plats och ha WRITE FILES behörighet på den externa platsen.

    • Har WRITE FILES behörighet för en namngiven lagringsautentiseringsuppgift som ger behörighet att skriva till en plats med hjälp av: COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)

    Mer information finns i Ansluta till molnobjektlagring och -tjänster med Unity Catalog .

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

    Jämför källkolumner med kolumner i måltabellen efter ordningsposition. Typgjutning av de matchade kolumnerna görs automatiskt.

    Den här parametern stöds endast för huvudlöst CSV-filformat. Du måste ange FILEFORMAT = CSV. FORMAT_OPTIONS måste också anges till ("headers" = "false") (FORMAT_OPTIONS ("headers" = "false") är standardvärdet).

    Syntaxalternativ 1: BY POSITION

    • Matchar ihop källkolumner med måltabellens kolumner efter ordningsposition automatiskt.
      • Standardnamnmatchningen används inte för jämförelse.
      • IDENTITY kolumner och GENERATED kolumner i måltabellen ignoreras när de matchar källkolumnerna.
      • Om antalet källkolumner inte är lika med de filtrerade måltabellkolumnerna COPY INTO genererar ett fel.

    Syntaxalternativ 2: ( col_name [ , <col_name> ... ] )

    • Matchar källkolumner med de angivna måltabellkolumnerna efter relativ ordningstalsposition med hjälp av en namnlista för måltabellkolumner inom parenteser, avgränsade med kommatecken.
      • Den ursprungliga tabellkolumnordningen och kolumnnamnen används inte för matchning.
      • IDENTITY kolumner och GENERATED kolumner kan inte anges i listan med kolumnnamn, annars COPY INTO uppstår ett fel.
      • Det går inte att duplicera de angivna kolumnerna.
      • När antalet källkolumner inte är lika med de angivna tabellkolumnerna uppstår COPY INTO ett fel.
      • För de kolumner som inte anges i kolumnnamnslistan tilldelar COPY INTO eventuella standardvärden, och tilldelar NULL annars. Om någon kolumn inte är nullbar uppstår COPY INTO ett fel.
  • source

    Filplatsen som data ska läsas in från. Filer på den här platsen måste ha det format som anges i FILEFORMAT. Platsen tillhandahålls i form av en URI.

    Åtkomst till källplatsen kan ges via:

    • credential_name

      Valfritt namn på de autentiseringsuppgifter som används för att komma åt eller skriva till lagringsplatsen. Du använder endast den här autentiseringsuppgiften om filplatsen inte ingår på en extern plats. Se credential_name.

    • Infogade tillfälliga autentiseringsuppgifter.

    • Definiera källplatsen som en extern plats och ha READ FILES behörigheter på den externa platsen via Unity Catalog.

    • Att använda en namngiven lagringsreferens med READ FILES behörigheter som tillåter läsning från en plats via Unity Catalog.

    Du behöver inte ange inbäddade eller namngivna inloggningsuppgifter om sökvägen redan definierats som en extern plats som du har behörighet att använda. Mer information finns i Skapa en extern plats för att ansluta molnlagring till Azure Databricks .

    Kommentar

    Om källfilsökvägen är en rotsökväg lägger du till ett snedstreck (/) i slutet av filsökvägen, s3://my-bucket/till exempel .

    Godkända alternativ för autentiseringsuppgifter är:

    • AZURE_SAS_TOKEN för ADLS Gen2 och Azure Blob Storage
    • AWS_ACCESS_KEY, AWS_SECRET_KEYoch AWS_SESSION_TOKEN för AWS S3

    Godkända krypteringsalternativ är:

    • TYPE = 'AWS_SSE_C', och MASTER_KEY för AWS S3

Se Läsa in data med hjälp av COPY INTO med tillfälliga autentiseringsuppgifter.

  • SELECT expression_list

    Väljer de angivna kolumnerna eller uttrycken från källdata innan du kopierar till Delta-tabellen. Uttrycken kan vara allt du använder med SELECT -instruktioner, inklusive fönsteråtgärder. Du kan bara använda aggregeringsuttryck för globala aggregeringar. Du kan inte GROUP BY använda kolumner med den här syntaxen.

  • FILEFORMAT = data_source

    Formatet för källfilerna som ska läsas in. En av CSV, JSON, AVRO, ORC, PARQUET, TEXT, BINARYFILE.

  • VALIDATE

    Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime 10.4 LTS och senare

    De data som ska läsas in i en tabell verifieras men skrivs inte till tabellen. Dessa valideringar omfattar:

    • Om data kan parsas.
    • Om schemat matchar tabellens eller om schemat behöver utvecklas.
    • Om alla null- och kontrollvillkor är uppfyllda.

    Standardvärdet är att verifiera alla data som ska läsas in. Du kan ange ett antal rader som ska verifieras med nyckelordet ROWS , till exempel VALIDATE 15 ROWS. Instruktionen COPY INTO returnerar en förhandsgranskning av data på 50 rader eller mindre när ett antal mindre än 50 används med nyckelordet ROWS ).

  • FILES

    En lista över filnamn som ska läsas in med en gräns på 1 000 filer. Det går inte att ange med PATTERN.

  • PATTERN

    Ett globmönster som identifierar de filer som ska läsas in från källkatalogen. Det går inte att ange med FILES.

    Mönster beskrivning
    ? Matchar ett enskilt tecken
    * Matchar noll eller fler tecken
    [abc] Matchar ett enskilt tecken från teckenuppsättningen {a,b,c}.
    [a-z] Matchar ett enskilt tecken från teckenområdet {a... z}.
    [^a] Matchar ett enskilt tecken som inte kommer från teckenuppsättningen eller intervallet {a}. Observera att ^ tecken måste förekomma omedelbart till höger om den inledande hakparentesen.
    {ab,cd} Matchar en sträng från stränguppsättningen {ab, cd}.
    {ab,c{de, fh}} Matchar en sträng från stränguppsättningen {ab, cde, cfh}.
  • FORMAT_OPTIONS

    Alternativ som ska skickas till Apache Spark-datakällans läsare för det angivna formatet. Se Formatalternativ för varje filformat.

  • COPY_OPTIONS

    Alternativ för att styra kommandots COPY INTO funktion.

    • force: boolesk, standardvärde false. Om värdet trueär inaktiverat inaktiveras idempotens och filer läses in oavsett om de har lästs in tidigare.
    • mergeSchema: boolesk datatyp, standard false. Om det är inställt på truekan schemat utvecklas enligt inkommande data.

Anropa COPY INTO samtidigt

COPY INTO stöder samtidiga anrop mot samma tabell. Så länge som COPY INTO anropas samtidigt på distinkta uppsättningar med indatafiler bör varje anrop så småningom lyckas, annars får du en transaktionskonflikt. COPY INTO bör inte anropas samtidigt för att förbättra prestandan. ett enda COPY INTO kommando med flera filer presterar vanligtvis bättre än att köra samtidiga COPY INTO kommandon med en enda fil vardera. COPY INTO kan anropas samtidigt när:

  • Flera dataproducenter har inte ett enkelt sätt att samordna och kan inte göra ett enda anrop.
  • När en mycket stor katalog kan bearbetas del för del, underkatalog för underkatalog. När du matar in kataloger med ett mycket stort antal filer rekommenderar Databricks att du använder Auto Loader när det är möjligt.

Komma åt filens metadata

Information om hur du kommer åt metadata för filbaserade datakällor finns i kolumnen Filmetadata.

Formatalternativ

Allmänna alternativ

Följande alternativ gäller för alla filformat.

Alternativ
ignoreCorruptFiles
Typ: Boolean
Om du vill ignorera skadade filer. Om det är sant fortsätter Spark-jobben att köras när skadade filer påträffas och innehållet som har lästs returneras fortfarande. Kan observeras som numSkippedCorruptFiles i
Delta Lake-historikens operationMetrics-kolumn. Finns i Databricks Runtime 11.3 LTS och senare.
Standardvärde: false
ignoreMissingFiles
Typ: Boolean
Om du vill ignorera filer som saknas. Om det är sant fortsätter Spark-jobben att köras när filer saknas och innehållet som har lästs returneras fortfarande. Finns i Databricks Runtime 11.3 LTS och senare.
Standardvärde: false för automatisk inläsning, true för COPY INTO (äldre)
modifiedAfter
Typ: Timestamp String, till exempel 2021-01-01 00:00:00.000000 UTC+0
En valfri tidsstämpel för att mata in filer som har en tidsstämpel för ändring efter den angivna tidsstämpeln.
Standardvärde: Ingen
modifiedBefore
Typ: Timestamp String, till exempel 2021-01-01 00:00:00.000000 UTC+0
En valfri tidsstämpel för att mata in filer som har en tidsstämpel för ändring före den angivna tidsstämpeln.
Standardvärde: Ingen
pathGlobFilter eller fileNamePattern
Typ: String
Ett potentiellt globmönster för att välja filer. Motsvarar
PATTERN i COPY INTO (äldre). fileNamePattern kan användas i read_files.
Standardvärde: Ingen
recursiveFileLookup
Typ: Boolean
Om du vill hoppa över partitionsslutsats under schemainferens. Detta påverkar inte vilka filer som läses in.
Standardvärde: false

JSON Alternativ

Alternativ
allowBackslashEscapingAnyCharacter
Typ: Boolean
Om du vill tillåta att omvänt snedstreck undfly alla tecken som lyckas. Om det inte är aktiverat kan endast tecken som uttryckligen anges av JSON-specifikationen undantagas.
Standardvärde: false
allowComments
Typ: Boolean
Om du vill tillåta användning av Java-, C- och C++-formatkommentarer ('/', '*'och '//' sorter) inom parsat innehåll eller inte.
Standardvärde: false
allowNonNumericNumbers
Typ: Boolean
Om du vill tillåta uppsättningen med token som inte är ett tal (NaN) som lagliga flytande talvärden.
Standardvärde: true
allowNumericLeadingZeros
Typ: Boolean
Om att tillåta att heltal börjar med ytterligare (ignorerbara) nollor (till exempel 000001).
Standardvärde: false
allowSingleQuotes
Typ: Boolean
Om du vill tillåta användning av enkla citattecken (apostrofer, tecken '\') för att citera strängar (namn och strängvärden).
Standardvärde: true
allowUnquotedControlChars
Typ: Boolean
Om JSON-strängar ska tillåtas innehålla icke kapslade kontrolltecken (ASCII-tecken med ett värde som är mindre än 32, inklusive flik- och radmatningstecken) eller inte.
Standardvärde: false
allowUnquotedFieldNames
Typ: Boolean
Om du vill tillåta användning av ociterade fältnamn (som tillåts av JavaScript, men inte av JSON-specifikationen).
Standardvärde: false
badRecordsPath
Typ: String
Sökvägen till att lagra filer för att registrera information om felaktiga JSON-poster.
Standardvärde: Ingen
columnNameOfCorruptRecord
Typ: String
Kolumnen för lagring av poster som är felaktiga och inte kan parsas. Om mode för parsning anges som DROPMALFORMED, kommer den här kolumnen att vara tom.
Standardvärde: _corrupt_record
dateFormat
Typ: String
Formatet för parsning av datumsträngar.
Standardvärde: yyyy-MM-dd
dropFieldIfAllNull
Typ: Boolean
Om du vill ignorera kolumner med alla null-värden eller tomma matriser och structs under schemainferens.
Standardvärde: false
encoding eller charset
Typ: String
Namnet på kodningen av JSON-filerna. Se java.nio.charset.Charset för lista över alternativ. Du kan inte använda UTF-16 och UTF-32 när multiline är true.
Standardvärde: UTF-8
inferTimestamp
Typ: Boolean
Om du vill försöka härleda tidsstämpelsträngar som en TimestampType. När det är inställt på
truekan schemainferensen ta märkbart längre tid. Du måste aktivera cloudFiles.inferColumnTypes för att kunna använda det med Auto Loader.
Standardvärde: false
lineSep
Typ: String
En sträng mellan två på varandra följande JSON-poster.
Standardvärde: Ingen, som omfattar \r, \r\noch \n
locale
Typ: String
En java.util.Locale identifierare. Påverkar standarddatum, tidsstämpel och decimalparsning i JSON.
Standardvärde: US
mode
Typ: String
Parsningsläge för hantering av felaktiga poster. En av 'PERMISSIVE',
'DROPMALFORMED', eller 'FAILFAST'.
Standardvärde: PERMISSIVE
multiLine
Typ: Boolean
Om JSON-posterna sträcker sig över flera rader.
Standardvärde: false
prefersDecimal
Typ: Boolean
Försöker härleda strängar som DecimalType i stället för float eller double där det är möjligt. Du måste också använda schemainferens, antingen genom att aktivera
inferSchema eller använda cloudFiles.inferColumnTypes med Auto Loader.
Standardvärde: false
primitivesAsString
Typ: Boolean
Huruvida man ska härleda primitiva typer som tal och booleska värden som StringType.
Standardvärde: false
readerCaseSensitive
Typ: Boolean
Anger hur skiftlägeskänslighet hanteras när rescuedDataColumn är aktiverat. Om det är sant kan du rädda de datakolumner vars namn skiljer sig från schemat. Annars läser du data på ett skiftlägesokänsligt sätt. Tillgänglig i Databricks Runtime
13.3 och senare.
Standardvärde: true
rescuedDataColumn
Typ: String
Om du vill samla in alla data som inte kan parsas på grund av ett matchningsfel av datatyp eller schemamatchning (inklusive kolumnhölje) till en separat kolumn. Den här kolumnen ingår som standard när du använder Auto Loader. Mer information finns i Vad är den räddade datakolumnen?.
COPY INTO (äldre) stöder inte den räddade datakolumnen eftersom du inte kan ange schemat manuellt med hjälp av COPY INTO. Databricks rekommenderar att du använder Auto Loader för de flesta inmatningsscenarier.
Standardvärde: Ingen
singleVariantColumn
Typ: String
Om du vill mata in hela JSON-dokumentet, parsat i en enskild variantkolumn med den angivna strängen som kolumnens namn. Om det är inaktiverat matas JSON-fälten in i sina egna kolumner.
Standardvärde: Ingen
timestampFormat
Typ: String
Formatet för att parsa tidsstämpelsträngar.
Standardvärde: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
Typ: String
Det java.time.ZoneId som används vid tolkning av tidsstämplar och datum.
Standardvärde: Ingen

CSV Alternativ

Alternativ
badRecordsPath
Typ: String
Sökvägen till att lagra filer för att registrera information om felaktiga CSV-poster.
Standardvärde: Ingen
charToEscapeQuoteEscaping
Typ: Char
Tecknet som används för att undkomma det tecken som används för att undvika citattecken. Till exempel för följande post: : [ " a\\", b ]
  • Om tecknet för att undkomma '\' är odefinierat parsas inte posten. Parsern läser tecken: [a],[\],["],[,],[ ],[b] och utlöser ett fel eftersom det inte kan hitta ett avslutande citattecken.
  • Om tecknet för att undkomma '\' definieras som '\', kommer posten att läsas med 2 värden: [a\] och [b].

Standardvärde: '\0'
columnNameOfCorruptRecord
Stöd finns för Auto Loader. Stöds inte för COPY INTO (äldre).
Typ: String
Kolumnen för lagring av felaktiga poster som inte kan analyseras. Om mode för parsning anges som DROPMALFORMED, är den här kolumnen tom.
Standardvärde: _corrupt_record
comment
Typ: Char
Definierar det tecken som representerar en radkommentar när det hittas i början av en textrad. Använd '\0' för att inaktivera överhoppning av kommentarer.
Standardvärde: '\u0000'
dateFormat
Typ: String
Formatet för parsning av datumsträngar.
Standardvärde: yyyy-MM-dd
emptyValue
Typ: String
Strängrepresentation av ett tomt värde.
Standardvärde: ""
encoding eller charset
Typ: String
Namnet på kodningen av CSV-filerna. Se java.nio.charset.Charset listan med alternativ. UTF-16 och UTF-32 kan inte användas när multiline är true.
Standardvärde: UTF-8
enforceSchema
Typ: Boolean
Att tvångstillämpa det angivna eller härledda schemat på CSV-filerna. Om alternativet är aktiverat ignoreras rubrikerna för CSV-filer. Det här alternativet ignoreras som standard när du använder Auto Loader för att rädda data och tillåta schemautveckling.
Standardvärde: true
escape
Typ: Char
Escape-tecknet som ska användas vid parsning av data.
Standardvärde: '\'
header
Typ: Boolean
Om CSV-filerna innehåller ett huvud. Automatisk inläsning förutsätter att filer har rubriker vid härledning av schemat.
Standardvärde: false
ignoreLeadingWhiteSpace
Typ: Boolean
Om du vill ignorera inledande blanksteg för varje parsat värde.
Standardvärde: false
ignoreTrailingWhiteSpace
Typ: Boolean
Huruvida man ska ignorera avslutande blanksteg för varje tolkat värde.
Standardvärde: false
inferSchema
Typ: Boolean
Om du vill härleda datatyperna för de parsade CSV-posterna eller anta att alla kolumner är av StringType. Kräver en ytterligare genomgång av data om inställt på true. Använd cloudFiles.inferColumnTypes istället för Automatisk inläsare.
Standardvärde: false
lineSep
Typ: String
En sträng mellan två på varandra följande CSV-poster.
Standardvärde: Ingen, som omfattar \r, \r\noch \n
locale
Typ: String
En java.util.Locale identifierare. Påverkar standarddatum, tidsstämpel och decimalparsning i CSV.
Standardvärde: US
maxCharsPerColumn
Typ: Int
Maximalt antal tecken som förväntas från ett värde att parsa. Kan användas för att undvika minnesfel. Standardvärdet är -1, vilket innebär obegränsat.
Standardvärde: -1
maxColumns
Typ: Int
Den hårda gränsen för hur många kolumner en post kan ha.
Standardvärde: 20480
mergeSchema
Typ: Boolean
Om schemat ska härledas mellan flera filer och om schemat för varje fil ska sammanfogas. Aktiverad som standard för Auto Loader när schemat härleds.
Standardvärde: false
mode
Typ: String
Parsningsläge för hantering av felaktiga poster. En av 'PERMISSIVE',
'DROPMALFORMED', och 'FAILFAST'.
Standardvärde: PERMISSIVE
multiLine
Typ: Boolean
Om CSV-posterna sträcker sig över flera rader.
Standardvärde: false
nanValue
Typ: String
Strängrepresentationen av ett värde som inte är ett tal vid parsning FloatType och DoubleType kolumner.
Standardvärde: "NaN"
negativeInf
Typ: String
Strängrepresentationen av negativ oändlighet vid tolkning av kolumner FloatType eller DoubleType.
Standardvärde: "-Inf"
nullValue
Typ: String
Strängrepresentation av ett null-värde.
Standardvärde: ""
parserCaseSensitive (inaktuell)
Typ: Boolean
När du läser filer, om du vill justera kolumner som deklarerats i rubriken med schemafallet känsligt. Detta är true som standard för autoladdare. Kolumner som skiljer sig åt efter skiftläge kommer att räddas i om det rescuedDataColumn är aktiverat. Det här alternativet har blivit inaktuellt till förmån för readerCaseSensitive.
Standardvärde: false
positiveInf
Typ: String
Strängrepresentationen av positiv oändlighet när man analyserar FloatType eller DoubleType i kolumner.
Standardvärde: "Inf"
preferDate
Typ: Boolean
Försöker härleda strängar som datum i stället för tidsstämpel när det är möjligt. Du måste också använda schemainferens, antingen genom att aktivera inferSchema eller använda
cloudFiles.inferColumnTypes med Auto Loader.
Standardvärde: true
quote
Typ: Char
Tecknet som används för att ta bort värden där fältgränsaren är en del av värdet.
Standardvärde: "
readerCaseSensitive
Typ: Boolean
Anger beteendet för skiftlägeskänslighet när funktionen rescuedDataColumn är aktiverad. Om det är sant kan du rädda de datakolumner vars namn skiljer sig från schemat. Annars läser du data på ett skiftlägesokänsligt sätt.
Standardvärde: true
rescuedDataColumn
Typ: String
Om du vill samla in alla data som inte kan parsas på grund av: ett matchningsfel av datatyp och schemamatchningsfel (inklusive kolumnhölje) till en separat kolumn. Den här kolumnen ingår som standard när du använder Auto Loader. Mer information finns i Vad är den räddade datakolumnen?.
COPY INTO (äldre) stöder inte den räddade datakolumnen eftersom du inte kan ange schemat manuellt med hjälp av COPY INTO. Databricks rekommenderar att du använder Auto Loader för de flesta inmatningsscenarier.
Standardvärde: Ingen
sep eller delimiter
Typ: String
Avgränsarsträngen mellan kolumner.
Standardvärde: ","
skipRows
Typ: Int
Antalet rader från början av CSV-filen som ska ignoreras (inklusive kommenterade och tomma rader). Om header är sant blir rubriken den första oskippna och okommenterade raden.
Standardvärde: 0
timestampFormat
Typ: String
Formatet för att parsa tidsstämpelsträngar.
Standardvärde: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
Typ: String
java.time.ZoneId att använda vid parsning av tidsstämplar och datum.
Standardvärde: Ingen
unescapedQuoteHandling
Typ: String
Strategin för hantering av ej kapslade citattecken. Tillåtna alternativ:
  • STOP_AT_CLOSING_QUOTE: Om okapslade citattecken hittas i indata ackumulerar du citattecknet och fortsätter att parsa värdet som ett citerat värde tills ett avslutande citattecken hittas.
  • BACK_TO_DELIMITER: Om okapslade citattecken hittas i indata, betrakta värdet som ett ocitat värde. Detta gör att parsern ackumulerar alla tecken i det aktuella parsade värdet tills avgränsaren som definieras av sep hittas. Om ingen avgränsare hittas i värdet fortsätter parsern att ackumulera tecken från indata tills en avgränsare eller radslut hittas.
  • STOP_AT_DELIMITER: Om oskyddade citattecken hittas i indata, betrakta värdet som ett oskyddat värde. Detta gör att parsern ackumulerar alla tecken tills avgränsaren som definieras av sep, eller så hittas ett radslut i indata.
  • SKIP_VALUE: Om okapslade citattecken hittas i indata kommer innehållet för värdet att hoppas över (tills nästa avgränsare hittas) och värdet som anges i nullValue kommer att genereras istället.
  • RAISE_ERROR: Om okapslade citattecken hittas i inmatningen,
    TextParsingException kommer att kastas.

Standardvärde: STOP_AT_DELIMITER

XML Alternativ

Alternativ beskrivning Definitionsområde
rowTag Radtaggen för XML-filerna som ska behandlas som en rad. I xml-exemplet <books> <book><book>...<books>är booklämpligt värde . Det här är ett obligatoriskt alternativ. läs
samplingRatio Definierar en bråkdel av rader som används för schemainferens. Inbyggda XML-funktioner ignorerar det här alternativet. Standard: 1.0. läs
excludeAttribute Om du vill exkludera attribut i element. Standard: false. läs
mode Metod för att hantera skadade poster under parsing.
PERMISSIVE: För skadade poster placerar du den skadade strängen i ett fält som konfigurerats av columnNameOfCorruptRecord, och konfigurerar skadade fält till null. Om du vill behålla skadade poster kan du ange ett typfält string som heter columnNameOfCorruptRecord i ett användardefinierat schema. Om ett schema inte har fältet tas skadade poster bort under parsningen. När du härleder ett schema lägger parsern implicit till ett columnNameOfCorruptRecord fält i ett utdataschema.
DROPMALFORMED: Ignorerar skadade poster. Det här läget stöds inte för inbyggda XML-funktioner.
FAILFAST: Kastar ett undantag när parsern möter korrupta poster.
läs
inferSchema Om trueförsöker du härleda en lämplig typ för varje resulterande DataFrame-kolumn. Om falseär alla resulterande kolumner av string typen . Standardvärde:
true. Inbyggda XML-funktioner ignorerar det här alternativet.
läs
columnNameOfCorruptRecord Tillåter namnbyte av det nya fältet som innehåller en felaktigt formaterad sträng som skapats av
PERMISSIVE läge. Standard: spark.sql.columnNameOfCorruptRecord.
läs
attributePrefix Prefixet för attribut för att skilja attribut från element. Det här är prefixet för fältnamn. Standard är _. Kan vara tomt för läsning av XML, men inte för skrivning. läsa, skriva
valueTag Taggen som används för teckendata i element som också har attribut och/eller underordnade element. Användaren kan ange fältet valueTag i schemat eller så läggs det till automatiskt under schemainferensen när teckendata finns i element med andra element eller attribut. Standard: _VALUE läsa,skriva
encoding För läsning avkodar XML-filerna efter den angivna kodningstypen. För skrivning anger kodning (teckenuppsättning) för sparade XML-filer. Inbyggda XML-funktioner ignorerar det här alternativet. Grundinställning: UTF-8. läsa, skriva
ignoreSurroundingSpaces Definierar om kringliggande blanksteg från värden som ska läsas ska ignoreras. Standard: true. Tecken som endast består av blanksteg ignoreras. läs
rowValidationXSDPath Sökväg till en valfri XSD-fil som används för att verifiera XML för varje rad individuellt. Rader som inte kan verifieras behandlas som parsningsfel som ovan. XSD påverkar inte det angivna eller härledda schemat på något annat sätt. läs
ignoreNamespace Om trueignoreras namnrymdernas prefix för XML-element och attribut. Taggar <abc:author> och <def:author> behandlas, till exempel, som om båda bara är <author>. Det går inte att ignorera namnrymder på elementet rowTag, endast dess läsbara underordnade. XML-parsning är inte namnområdesmedveten även om false. Standard: false. läs
timestampFormat Anpassad tidsstämpelformatsträng som följer datetime-mönsterformatet . Detta gäller för timestamp typ. Standard: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. läsa, skriva
timestampNTZFormat Anpassad formatsträng för tidsstämpel utan tidszon som följer datetime-mönsterformatet. Detta gäller för timestampNTZType-typen. Standardvärde:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
läsa, skriva
dateFormat Anpassad datumformatsträng som följer datetime-mönsterformatet. Detta gäller för datumtyp. Förvald: yyyy-MM-dd. läsa, skriva
locale Anger en platsinställning som en språktagg i IETF BCP 47-format. Används till exempel locale vid parsning av datum och tidsstämplar. Standard: en-US. läs
rootTag Rottagg för XML-filerna. Till exempel, i <books> <book><book>...</books> är det lämpliga värdet books. Du kan inkludera grundläggande attribut genom att ange ett värde som books foo="bar". Standard: ROWS. skriva
declaration Innehållet i XML-deklarationen som ska skrivas i början av varje XML-utdatafil före rootTag. Till exempel orsakar ett värde av foo att <?xml foo?> skrivs. Ange en tom sträng för att undertrycka. Standard: version="1.0"
encoding="UTF-8" standalone="yes".
skriva
arrayElementName Namn på XML-element som omger varje element i en matrisvärdeskolumn när du skriver. Standard: item. skriva
nullValue Anger strängrepresentationen av ett null-värde. Standard: sträng null. När detta är nullskriver parsern inte attribut och element för fält. läsa, skriva
compression Komprimeringskod som ska användas när du sparar till filen. Detta kan vara ett av de kända skiftlägesokänsliga förkortade namnen (none, bzip2, gzip, lz4, snappy och
deflate). Inbyggda XML-funktioner ignorerar det här alternativet. Standard: none.
skriva
validateName Om sant kastar ett fel vid misslyckad validering av XML-elementnamn. Till exempel kan SQL-fältnamn innehålla blanksteg, men XML-elementnamn kan inte det. Standardvärde:
true.
skriva
readerCaseSensitive Anger beteendet för skiftlägeskänslighet när rescuedDataColumn är aktiverat. Om det är sant kan du rädda de datakolumner vars namn skiljer sig från schemat. Annars läser du data på ett skiftlägesokänsligt sätt. Standard: true. läs
rescuedDataColumn Om du vill samla in alla data som inte kan parsas på grund av ett matchningsfel av datatyp och schemamatchning (inklusive kolumnhölje) till en separat kolumn. Den här kolumnen ingår som standard när du använder Auto Loader. Mer information finns i Vad är den räddade datakolumnen?.
COPY INTO (äldre) stöder inte den räddade datakolumnen eftersom du inte kan ange schemat manuellt med hjälp av COPY INTO. Databricks rekommenderar att du använder Auto Loader för de flesta inmatningsscenarier.
Standard: Ingen.
läs

PARQUET Alternativ

Alternativ
datetimeRebaseMode
Typ: String
Styr ombaseringen av DATE- och TIMESTAMP-värdena mellan julianska och proleptiska gregorianska kalendrar. Tillåtna värden: EXCEPTION, LEGACYoch
CORRECTED.
Standardvärde: LEGACY
int96RebaseMode
Typ: String
Styr ombaseringen av INT96-tidsstämpelvärdena mellan julianska och proleptiska gregorianska kalendrar. Tillåtna värden: EXCEPTION, LEGACYoch
CORRECTED.
Standardvärde: LEGACY
mergeSchema
Typ: Boolean
Om schemat ska härledas mellan flera filer och om schemat för varje fil ska sammanfogas.
Standardvärde: false
readerCaseSensitive
Typ: Boolean
Anger skiftlägeskänsligt beteende när rescuedDataColumn är aktiverat. Om det är sant kan du rädda de datakolumner vars namn skiljer sig från schemat. Annars läser du data på ett skiftlägesokänsligt sätt.
Standardvärde: true
rescuedDataColumn
Typ: String
Om du vill samla in alla data som inte kan parsas på grund av: ett matchningsfel av datatyp och schemamatchningsfel (inklusive kolumnhölje) till en separat kolumn. Den här kolumnen ingår som standard när du använder Auto Loader. Mer information finns i Vad är den räddade datakolumnen?.
COPY INTO (äldre) stöder inte den räddade datakolumnen eftersom du inte kan ange schemat manuellt med hjälp av COPY INTO. Databricks rekommenderar att du använder Auto Loader för de flesta inmatningsscenarier.
Standardvärde: Ingen

AVRO Alternativ

Alternativ
avroSchema
Typ: String
Valfritt schema som tillhandahålls av en användare i Avro-format. När du läser Avro kan det här alternativet ställas in på ett utvecklat schema, som är kompatibelt men annorlunda med det faktiska Avro-schemat. Deserialiseringsschemat överensstämmer med det utvecklade schemat. Om du till exempel anger ett schema som innehåller ytterligare en kolumn med ett standardvärde innehåller läsresultatet även den nya kolumnen.
Standardvärde: Ingen
datetimeRebaseMode
Typ: String
Styr ombaseringen av DATE- och TIMESTAMP-värdena mellan julianska och proleptiska gregorianska kalendrar. Tillåtna värden: EXCEPTION, LEGACYoch
CORRECTED.
Standardvärde: LEGACY
mergeSchema
Typ: Boolean
Om schemat ska härledas mellan flera filer och om schemat för varje fil ska sammanfogas.
mergeSchema för Avro tillåter inte flexibilitet i datatyper.
Standardvärde: false
readerCaseSensitive
Typ: Boolean
Anger skiftlägeskänslighetsbeteendet när rescuedDataColumn är aktiverat. Om ja, bevara de datakolumner vars namn skiljer sig skiftlägesvis från schemat; annars läs data skiftlägesokänsligt.
Standardvärde: true
rescuedDataColumn
Typ: String
Om du vill samla in alla data som inte kan parsas på grund av: ett matchningsfel av datatyp och schemamatchningsfel (inklusive kolumnhölje) till en separat kolumn. Den här kolumnen ingår som standard när du använder Auto Loader.
COPY INTO (äldre) stöder inte den räddade datakolumnen eftersom du inte kan ange schemat manuellt med hjälp av COPY INTO. Databricks rekommenderar att du använder Auto Loader för de flesta inmatningsscenarier.
Mer information finns i Vad är den räddade datakolumnen?.
Standardvärde: Ingen

BINARYFILE Alternativ

Binära filer har inga ytterligare konfigurationsalternativ.

TEXT Alternativ

Alternativ
encoding
Typ: String
Namnet på kodningen av TEXT-filerna. Se java.nio.charset.Charset för lista över alternativ.
Standardvärde: UTF-8
lineSep
Typ: String
En sträng mellan två på varandra följande TEXT-poster.
Standardvärde: Ingen, som omfattar \r, \r\n och \n
wholeText
Typ: Boolean
Om du vill läsa en fil som en enda post.
Standardvärde: false

ORC Alternativ

Alternativ
mergeSchema
Typ: Boolean
Om schemat ska härledas mellan flera filer och om schemat för varje fil ska sammanfogas.
Standardvärde: false