Delen via


COPY INTO

Van toepassing op:aangevinkt als ja Databricks SQL aangevinkt als ja Databricks Runtime

Laadt gegevens van een bestandslocatie in een Delta-tabel. Dit is een herhaalbare en idempotente bewerking - bestanden op de bronlocatie die al zijn geladen, worden overgeslagen. Dit geldt zelfs als de bestanden zijn gewijzigd sinds ze zijn geladen. Zie Algemene patronen voor het laden van gegevens met behulp van COPY INTOvoor voorbeelden.

Syntaxis

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

Parameterwaarden

  • target_table

    Identificeert een bestaande Delta-tabel. De target_table mag geen tijdelijke specificatie of optiesspecificatie bevatten.

    Als de tabelnaam wordt opgegeven in de vorm van een locatie, zoals: delta.`/path/to/table` , kan Unity Catalog de toegang beheren tot de locaties waarnaar wordt geschreven. U kunt schrijven naar een externe locatie door:

    • De locatie definiëren als een externe locatie en WRITE FILES machtigingen hebben voor die externe locatie.

    • Beschikken over WRITE FILES machtigingen voor een benoemde opslagreferentie die toestemming geven om naar een locatie te schrijven met behulp van: COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)

    Zie Verbinding maken met cloudobjectopslag en -services met behulp van Unity Catalog voor meer informatie.

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

    Bronkolommen worden gekoppeld aan kolommen van de doeltabel op basis van hun ordinale positie. Het type casting van de overeenkomende kolommen wordt automatisch uitgevoerd.

    Deze parameter wordt alleen ondersteund voor de csv-bestandsindeling zonder koptekst. U moet FILEFORMAT = CSV specificeren. FORMAT_OPTIONS moet ook worden ingesteld op ("headers" = "false") (FORMAT_OPTIONS ("headers" = "false") is de standaardinstelling).

    Syntaxisoptie 1: BY POSITION

    • Koppelt automatisch bronkolommen met de kolommen van de doeltabel op basis van volgorde.
      • Standaard naamvergelijking wordt niet gebruikt voor overeenkoming.
      • IDENTITY kolommen en GENERATED kolommen van de doeltabel worden genegeerd wanneer deze overeenkomen met de bronkolommen.
      • Als het aantal bronkolommen niet gelijk is aan de gefilterde kolommen van de doeltabel, veroorzaakt COPY INTO een fout.

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

    • Stemt bronkolommen af op de opgegeven doeltabelkolommen volgens hun relatieve volgorde, door gebruik te maken van een lijst met kolomnamen van de doeltabel tussen haakjes, gescheiden door komma's.
      • De oorspronkelijke volgorde van de tabelkolommen en kolomnamen wordt niet gebruikt voor het matchen.
      • IDENTITY kolommen en GENERATED kolommen kunnen niet worden opgegeven in de lijst met kolomnamen, anders wordt er een fout gegenereerd COPY INTO.
      • De opgegeven kolommen kunnen niet worden gedupliceerd.
      • Wanneer het aantal bronkolommen niet gelijk is aan de opgegeven tabelkolommen, wordt er een fout gegenereerd COPY INTO.
      • Voor de kolommen die niet zijn opgegeven in de lijst met kolomnamen, wijst COPY INTO standaardwaarden toe, indien van toepassing, en wijst anders NULL toe. Als een kolom niet nullbaar is, genereert COPY INTO een fout.
  • source

    De bestandslocatie waaruit de gegevens moeten worden geladen. Bestanden op deze locatie moeten de indeling hebben die is opgegeven in FILEFORMAT. De locatie wordt opgegeven in de vorm van een URI.

    Toegang tot de bronlocatie kan worden geboden via:

    • credential_name

      Optionele naam van de referentie die wordt gebruikt voor toegang tot of schrijven naar de opslaglocatie. U gebruikt deze referentie alleen als de bestandslocatie niet is opgenomen in een externe locatie. Zie credential_name.

    • Inline tijdelijke inloggegevens.

    • De bronlocatie definiëren als een externe locatie en READ FILES machtigingen hebben voor de externe locatie via Unity Catalog.

    • Een benoemde opslagreferentie gebruiken met READ FILES permissies die autorisatie bieden om via Unity Catalog vanaf een locatie te lezen.

    U hoeft geen inline- of naamgegevens op te geven als het pad al is gedefinieerd als een externe locatie waarvoor u machtigingen hebt te gebruiken. Zie Een externe locatie maken om cloudopslag te verbinden met Azure Databricks voor meer informatie.

    Notitie

    Als het pad naar het bronbestand een hoofdpad is, voegt u bijvoorbeeld een slash (/) toe aan het einde van het bestandspad s3://my-bucket/.

    Geaccepteerde referentieopties zijn:

    • AZURE_SAS_TOKEN voor ADLS Gen2 en Azure Blob Storage
    • AWS_ACCESS_KEY, AWS_SECRET_KEYen AWS_SESSION_TOKEN voor AWS S3

    Geaccepteerde versleutelingsopties zijn:

    • TYPE = 'AWS_SSE_C'en MASTER_KEY voor AWS S3

Zie Gegevens laden met COPY INTO met tijdelijke referenties.

  • SELECT expression_list

    Selecteert de opgegeven kolommen of expressies uit de brongegevens voordat u naar de Delta-tabel kopieert. De expressies kunnen alles zijn wat u gebruikt met SELECT instructies, waaronder vensterbewerkingen. U kunt aggregatie-expressies alleen gebruiken voor globale aggregaten; u kunt geen GROUP BY op kolommen toepassen met deze syntaxis.

  • FILEFORMAT = data_source

    De indeling van de bronbestanden die moeten worden geladen. Een van CSV, JSON, AVRO, ORC, PARQUET, TEXT, BINARYFILE.

  • VALIDATE

    Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 10.4 LTS en hoger

    De gegevens die in een tabel moeten worden geladen, worden gevalideerd, maar niet naar de tabel geschreven. Deze validaties zijn onder andere:

    • Of de gegevens kunnen worden verwerkt.
    • Of het schema overeenkomt met dat van de tabel of dat het schema moet worden ontwikkeld.
    • Of aan alle nulliteits- en controlevoorwaarden wordt voldaan.

    De standaardinstelling is om alle gegevens te valideren die moeten worden geladen. U kunt een aantal rijen opgeven dat moet worden gevalideerd met het ROWS trefwoord, zoals VALIDATE 15 ROWS. De COPY INTO instructie retourneert een voorbeeld van de gegevens van 50 rijen of minder wanneer een aantal minder dan 50 wordt gebruikt met het ROWS trefwoord).

  • FILES

    Een lijst met bestandsnamen die moeten worden geladen, met een limiet van 1000 bestanden. Kan niet worden opgegeven met PATTERN.

  • PATTERN

    Een glob-patroon dat de bestanden identificeert die moeten worden geladen vanuit de bronmap. Kan niet worden opgegeven met FILES.

    Patroon Beschrijving
    ? Komt overeen met één teken
    * Komt overeen met nul of meer tekens
    [abc] Komt overeen met één teken uit de tekenset {a,b,c}.
    [a-z] Komt overeen met één teken uit het tekenbereik {a... z}.
    [^a] Komt overeen met één teken dat niet afkomstig is uit de tekenset of het bereik {a}. Houd er rekening mee dat het ^ teken direct rechts van de openende haak moet staan.
    {ab,cd} Een string die overeenkomt met een element uit de verzameling {ab, cd}.
    {ab,c{de, fh}} Komt overeen met een tekenreeks in de verzameling van tekenreeksen {ab, cde, cfh}.
  • FORMAT_OPTIONS

    Opties die moeten worden doorgegeven aan de Apache Spark-gegevensbronlezer voor de opgegeven indeling. Zie Indelingsopties voor elke bestandsindeling.

  • COPY_OPTIONS

    Opties voor het beheren van de bewerking van de COPY INTO opdracht.

    • force: Booleaanse waarde, standaard false. Als deze optie is ingesteld op true, is idempotentie uitgeschakeld en worden bestanden geladen, ongeacht of ze eerder zijn geladen.
    • mergeSchema: Booleaanse waarde, standaard false. Als dit is ingesteld op true, kan het schema worden ontwikkeld op basis van de binnenkomende gegevens.

Tegelijkertijd COPY INTO aanroepen

COPY INTO ondersteunt gelijktijdige aanroepen voor dezelfde tabel. Zolang COPY INTO gelijktijdig wordt aangeroepen op afzonderlijke sets van invoerbestanden, moet elke aanroep uiteindelijk succesvol zijn, anders krijgt u een transactieconflict. COPY INTO mag niet gelijktijdig worden aangeroepen om de prestaties te verbeteren; een enkele COPY INTO opdracht met meerdere bestanden presteert doorgaans beter dan het uitvoeren van gelijktijdige COPY INTO opdrachten met elk één bestand. COPY INTO kan gelijktijdig worden aangeroepen wanneer:

  • Meerdere gegevensproducenten hebben geen eenvoudige manier om te coördineren en kunnen niet één aanroep maken.
  • Wanneer een zeer grote map kan worden opgenomen, submap voor submap. Wanneer u directory's met een zeer groot aantal bestanden opneemt, raadt Databricks het gebruik van Auto Loader indien mogelijk aan.

Metagegevens van access-bestanden

Zie Bestandsmetagegevenskolomvoor informatie over het benaderen van metagegevens voor bestandsgebaseerde gegevensbronnen.

Opmaakopties

Algemene opties

De volgende opties zijn van toepassing op alle bestandsindelingen.

Optie
ignoreCorruptFiles
Typ: Boolean
Of beschadigde bestanden moeten worden genegeerd. Als dit waar is, worden de Spark-taken nog steeds uitgevoerd wanneer beschadigde bestanden worden aangetroffen en wordt de gelezen inhoud nog steeds teruggegeven. Waarneembaar als numSkippedCorruptFiles in de
operationMetrics kolom van de Delta Lake-geschiedenis. Beschikbaar in Databricks Runtime 11.3 LTS en hoger.
Standaardwaarde: false
ignoreMissingFiles
Typ: Boolean
Of ontbrekende bestanden moeten worden genegeerd. Als dit waar is, zullen de Spark-taken doorgaan wanneer er ontbrekende bestanden worden aangetroffen en zal de gelezen inhoud nog steeds worden geretourneerd. Beschikbaar in Databricks Runtime 11.3 LTS en hoger.
Standaardwaarde: false voor automatisch laden, true voor COPY INTO (verouderd)
modifiedAfter
Type: Timestamp Stringbijvoorbeeld 2021-01-01 00:00:00.000000 UTC+0
Een optionele tijdstempel voor het opnemen van bestanden met een wijzigingstijdstempel na de opgegeven tijdstempel.
Standaardwaarde: Geen
modifiedBefore
Type: Timestamp Stringbijvoorbeeld 2021-01-01 00:00:00.000000 UTC+0
Een optionele tijdstempel voor het opnemen van bestanden met een wijzigingstijdstempel vóór de opgegeven tijdstempel.
Standaardwaarde: Geen
pathGlobFilter of fileNamePattern
Typ: String
Een mogelijk globpatroon voor het selecteren van bestanden. Gelijk aan
PATTERN in COPY INTO (verouderd). fileNamePattern kan worden gebruikt in read_files.
Standaardwaarde: Geen
recursiveFileLookup
Typ: Boolean
Of partitiedeductie tijdens schemadeductie moet worden overgeslagen. Dit heeft geen invloed op welke bestanden worden geladen.
Standaardwaarde: false

JSON Opties

Optie
allowBackslashEscapingAnyCharacter
Typ: Boolean
Of backslashes een volgend teken kunnen laten ontsnappen. Als niet ingeschakeld, kunnen alleen tekens die expliciet door de JSON-specificatie worden vermeld, geëscapet worden.
Standaardwaarde: false
allowComments
Typ: Boolean
Of het gebruik van opmerkingen in java-, C- en C++-stijl ('/', '*'en '//' variëteiten) binnen geparseerde inhoud al dan niet is toegestaan.
Standaardwaarde: false
allowNonNumericNumbers
Typ: Boolean
Hiermee wordt aangegeven of de reeks niet-nummer tokens (NaN) als geldige drijvende getalwaarden kunnen worden gebruikt.
Standaardwaarde: true
allowNumericLeadingZeros
Typ: Boolean
Of u wilt toestaan dat integrale getallen beginnen met extra (negeerbare) nullen (bijvoorbeeld 000001).
Standaardwaarde: false
allowSingleQuotes
Typ: Boolean
Hiermee wordt aangegeven of het gebruik van enkele aanhalingstekens (apostrof, teken '\') moet worden toegestaan voor het aanhalen van reeksen (namen en tekenreekswaarden).
Standaardwaarde: true
allowUnquotedControlChars
Typ: Boolean
Of JSON-tekenreeksen ongescapete besturingstekens mogen bevatten (ASCII-tekens met een waarde kleiner dan 32, inclusief tab- en regelinvoertekens) of niet.
Standaardwaarde: false
allowUnquotedFieldNames
Typ: Boolean
Of u het gebruik van niet-geciteerde veldnamen wilt toestaan (wat is toegestaan door JavaScript, maar niet door de JSON-specificatie).
Standaardwaarde: false
badRecordsPath
Typ: String
Het pad om bestanden op te slaan voor het vastleggen van de informatie over foute JSON-records.
Standaardwaarde: Geen
columnNameOfCorruptRecord
Typ: String
De kolom voor het opslaan van records die misvormd zijn en niet kunnen worden geparseerd. Als de mode voor parseren is ingesteld als DROPMALFORMED, is deze kolom leeg.
Standaardwaarde: _corrupt_record
dateFormat
Typ: String
De notatie voor het parseren van datumtekenreeksen.
Standaardwaarde: yyyy-MM-dd
dropFieldIfAllNull
Typ: Boolean
Of kolommen van alle null-waarden of lege matrices en structs tijdens schemadeductie moeten worden genegeerd.
Standaardwaarde: false
encoding of charset
Typ: String
De naam van de codering van de JSON-bestanden. Zie java.nio.charset.Charset voor een lijst met opties. U kunt niet gebruiken UTF-16 en UTF-32 wanneer multiline is true.
Standaardwaarde: UTF-8
inferTimestamp
Typ: Boolean
Of u tijdstempeltekenreeksen wilt afleiden als een TimestampType. Wanneer ingesteld op
truekan het afleiden van het schema merkbaar langer duren. U moet cloudFiles.inferColumnTypes inschakelen om met de Auto Loader te gebruiken.
Standaardwaarde: false
lineSep
Typ: String
Een string tussen twee opeenvolgende JSON-records.
Standaardwaarde: Geen, wat betrekking heeft op \r, \r\n en \n
locale
Typ: String
Een java.util.Locale-id. Beïnvloedt de standaarddatum, tijdstempel en decimale parsering binnen de JSON.
Standaardwaarde: US
mode
Typ: String
Parsermodus voor het omgaan met verkeerd gevormde records. Eén van 'PERMISSIVE',
'DROPMALFORMED', of 'FAILFAST'.
Standaardwaarde: PERMISSIVE
multiLine
Typ: Boolean
Of de JSON-records meerdere regels omvatten.
Standaardwaarde: false
prefersDecimal
Typ: Boolean
Probeert tekenreeksen af te leiden als DecimalType in plaats van float- of double-type, indien mogelijk. U moet ook schemadeductie gebruiken, bijvoorbeeld door deze in te schakelen.
inferSchema of cloudFiles.inferColumnTypes gebruiken met een automatische loader.
Standaardwaarde: false
primitivesAsString
Typ: Boolean
Of primitieve typen als getallen en booleaanse waarden moeten worden afgeleid.StringType
Standaardwaarde: false
readerCaseSensitive
Typ: Boolean
Hiermee specificeert u de hoofdlettergevoeligheid wanneer rescuedDataColumn is ingeschakeld. Indien waar, redt u de gegevenskolommen waarvan de namen verschillen per geval van het schema; lees anders de gegevens op een niet-hoofdlettergevoelige manier. Beschikbaar in Databricks Runtime
13.3 en hoger.
Standaardwaarde: true
rescuedDataColumn
Typ: String
Of u alle gegevens wilt verzamelen die niet kunnen worden geparseerd als gevolg van een niet-overeenkomend gegevenstype of niet-overeenkomende schema's (inclusief kolombehuizing) naar een afzonderlijke kolom. Deze kolom wordt standaard opgenomen bij het gebruik van automatisch laden. Raadpleeg Wat is de kolom met geredde gegevens?.
COPY INTO (verouderd) biedt geen ondersteuning voor de kolom met geredde gegevens, omdat u het schema niet handmatig kunt instellen met behulp van COPY INTO. Databricks raadt het gebruik van autolaadprogramma's aan voor de meeste opnamescenario's.
Standaardwaarde: Geen
singleVariantColumn
Typ: String
Of u het hele JSON-document wilt opnemen, geparseerd in één variantkolom met de opgegeven tekenreeks als de naam van de kolom. Als deze optie is uitgeschakeld, worden de JSON-velden opgenomen in hun eigen kolommen.
Standaardwaarde: Geen
timestampFormat
Typ: String
Het formaat voor het parseren van tijdstempelreeksen.
Standaardwaarde: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
Typ: String
De java.time.ZoneId te gebruiken bij het parseren van tijdstempels en datums.
Standaardwaarde: Geen

CSV Opties

Optie
badRecordsPath
Typ: String
Het pad voor het opslaan van bestanden met informatie over ongeldige CSV-records.
Standaardwaarde: Geen
charToEscapeQuoteEscaping
Typ: Char
Het teken dat wordt gebruikt om te ontsnappen aan het teken dat wordt gebruikt voor escape-aanhalingstekens. Bijvoorbeeld voor de volgende record: [ " a\\", b ]
  • Als het teken om aan de '\' te ontsnappen niet is gedefinieerd, wordt de record niet geparseerd. De parser leest de tekens: [a],[\],["],[,],[ ],[b] en geeft een foutmelding omdat er geen afsluitend aanhalingsteken kan worden gevonden.
  • Als het teken om de '\' te escapen gedefinieerd is als '\', wordt de record gelezen met 2 waarden: [a\] en [b].

Standaardwaarde: '\0'
columnNameOfCorruptRecord
Ondersteund voor automatisch laden. Niet ondersteund voor COPY INTO (verouderd).
Typ: String
De kolom voor het opslaan van records die misvormd zijn en niet kunnen worden geparseerd. Als de mode voor parseren is ingesteld als DROPMALFORMED, is deze kolom leeg.
Standaardwaarde: _corrupt_record
comment
Typ: Char
Hiermee definieert u het teken dat een regelcommentaar aangeeft wanneer deze wordt gevonden aan het begin van een tekstregel. Hiermee '\0' schakelt u het overslaan van opmerkingen uit.
Standaardwaarde: '\u0000'
dateFormat
Typ: String
De notatie voor het parseren van datumtekenreeksen.
Standaardwaarde: yyyy-MM-dd
emptyValue
Typ: String
Tekenreeksweergave van een lege waarde.
Standaardwaarde: ""
encoding of charset
Typ: String
De naam van de codering van de CSV-bestanden. Zie java.nio.charset.Charset voor de lijst met opties. UTF-16 en UTF-32 kunnen niet worden gebruikt wanneer multilinetrue.
Standaardwaarde: UTF-8
enforceSchema
Typ: Boolean
Of u het opgegeven of afgeleid schema geforceerd wilt toepassen op de CSV-bestanden. Als de optie is ingeschakeld, worden headers van CSV-bestanden genegeerd. Deze optie wordt standaard genegeerd wanneer u AutoLoader gebruikt om gegevens te redden en schemaontwikkeling mogelijk te maken.
Standaardwaarde: true
escape
Typ: Char
Het escape-teken dat moet worden gebruikt bij het parseren van de gegevens.
Standaardwaarde: '\'
header
Typ: Boolean
Of de CSV-bestanden een koptekst bevatten. Auto Loader gaat ervan uit dat bestanden headers hebben bij het uitstellen van het schema.
Standaardwaarde: false
ignoreLeadingWhiteSpace
Typ: Boolean
Of u voorloopspaties voor elke geparseerde waarde wilt negeren.
Standaardwaarde: false
ignoreTrailingWhiteSpace
Typ: Boolean
Hiermee wordt aangegeven of u volgspaties voor elke geparseerde waarde wilt negeren.
Standaardwaarde: false
inferSchema
Typ: Boolean
Of u de gegevenstypen van de geparseerde CSV-records wilt afleiden of dat u aanneemt dat alle kolommen van type StringTypezijn. Vereist een extra doorgang over de gegevens indien ingesteld op true. Gebruik in plaats daarvan cloudFiles.inferColumnTypes voor Autoloader.
Standaardwaarde: false
lineSep
Typ: String
Een tekst tussen twee opeenvolgende CSV-records.
Standaardwaarde: Geen, wat betrekking heeft op \r, \r\n en \n
locale
Typ: String
Een java.util.Locale-id. Beïnvloedt de standaarddatum, tijdstempel en decimale parsering in het CSV-bestand.
Standaardwaarde: US
maxCharsPerColumn
Typ: Int
Maximum aantal tekens dat wordt verwacht van een waarde om te parseren. Kan worden gebruikt om geheugenfouten te voorkomen. Standaardwaarde is -1, wat onbeperkt betekent.
Standaardwaarde: -1
maxColumns
Typ: Int
De vaste limiet van het aantal kolommen dat een record kan hebben.
Standaardwaarde: 20480
mergeSchema
Typ: Boolean
Of u het schema wilt afleiden over meerdere bestanden en het schema van elk bestand wilt samenvoegen. Standaard ingeschakeld voor Auto Loader bij het afleiden van het schema.
Standaardwaarde: false
mode
Typ: String
Parsermodus voor het omgaan met verkeerd gevormde records. Eén van 'PERMISSIVE',
'DROPMALFORMED', en 'FAILFAST'.
Standaardwaarde: PERMISSIVE
multiLine
Typ: Boolean
Of de CSV-records meerdere regels omvatten.
Standaardwaarde: false
nanValue
Typ: String
De tekenreeksweergave van een niet-een-getalwaarde bij het parseren van FloatType en DoubleType kolommen.
Standaardwaarde: "NaN"
negativeInf
Typ: String
De tekenreeksweergave van negatief oneindig bij het parseren van de kolommen FloatType of DoubleType.
Standaardwaarde: "-Inf"
nullValue
Typ: String
Tekenreeksweergave van een null-waarde.
Standaardwaarde: ""
parserCaseSensitive (afgeschaft)
Typ: Boolean
Tijdens het lezen van bestanden wordt overwogen of kolommen in de koptekst op hoofdlettergevoelige wijze moeten worden uitgelijnd met het schema. Dit is true standaard voor autolaadprogramma's. Kolommen die per geval verschillen, worden in de rescuedDataColumn gered indien ingeschakeld. Deze optie is afgeschaft ten gunste van readerCaseSensitive.
Standaardwaarde: false
positiveInf
Typ: String
De tekenreeksweergave van positieve oneindigheid bij het parseren van FloatType of DoubleType kolommen.
Standaardwaarde: "Inf"
preferDate
Typ: Boolean
Probeert tekenreeksen te interpreteren als data in plaats van tijdstempels, wanneer mogelijk. U moet ook schemadeductie gebruiken, ofwel door inferSchema in te schakelen of een andere methode te gebruiken.
cloudFiles.inferColumnTypes met Auto Loader.
Standaardwaarde: true
quote
Typ: Char
Het karakter dat wordt gebruikt om waarden te escapen waarbij het veldscheidingsteken in de waarde voorkomt.
Standaardwaarde: "
readerCaseSensitive
Typ: Boolean
Hiermee specificeert u de hoofdlettergevoeligheid wanneer rescuedDataColumn is ingeschakeld. Indien waar, redt u de gegevenskolommen waarvan de namen verschillen per geval van het schema; lees anders de gegevens op een niet-hoofdlettergevoelige manier.
Standaardwaarde: true
rescuedDataColumn
Typ: String
Of alle gegevens die niet kunnen worden geparsed vanwege een gegevenstypemismatch en een schema mismatch (inclusief kolomcasing) in een aparte kolom moeten worden verzameld. Deze kolom wordt standaard opgenomen bij het gebruik van automatisch laden. Voor meer informatie, raadpleeg Wat is de kolom met geredde gegevens?.
COPY INTO (verouderd) biedt geen ondersteuning voor de kolom met geredde gegevens, omdat u het schema niet handmatig kunt instellen met behulp van COPY INTO. Databricks raadt het gebruik van autolaadprogramma's aan voor de meeste opnamescenario's.
Standaardwaarde: Geen
sep of delimiter
Typ: String
De scheidingstekenreeks tussen kolommen.
Standaardwaarde: ","
skipRows
Typ: Int
Het aantal rijen vanaf het begin van het CSV-bestand dat moet worden genegeerd (inclusief opmerkingen en lege rijen). Als header waar is, wordt de kop de eerste niet-overgeslagen en niet-becommentarieerde rij.
Standaardwaarde: 0
timestampFormat
Typ: String
Het formaat voor het parseren van tijdstempelreeksen.
Standaardwaarde: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone
Typ: String
De java.time.ZoneId te gebruiken bij het parseren van tijdstempels en datums.
Standaardwaarde: Geen
unescapedQuoteHandling
Typ: String
De aanpak voor het omgaan met niet-ontsloten aanhalingstekens. Toegestane opties:
  • STOP_AT_CLOSING_QUOTE: Als er niet-ontsnapte aanhalingstekens worden gevonden in de invoer, verzamel dan het aanhalingsteken en ga verder met het parseren van de waarde als een geciteerde waarde, totdat er een sluitend aanhalingsteken wordt gevonden.
  • BACK_TO_DELIMITER: Als er niet-ontsnapte aanhalingstekens worden gevonden in de invoer, kunt u de waarde beschouwen als een niet-gequote waarde. Hierdoor verzamelt de parser alle tekens van de huidige geparseerde waarde totdat het scheidingsteken dat is gedefinieerd door sep is gevonden. Als er geen scheidingsteken in de waarde wordt gevonden, blijft de parser tekens uit de invoer accumuleren totdat een scheidingsteken of regeleinde is gevonden.
  • STOP_AT_DELIMITER: Als er niet-ontsloten aanhalingstekens worden gevonden in de invoer, kunt u de waarde beschouwen als een niet-geciteerde waarde. Hierdoor verzamelt de parser alle tekens totdat het scheidingsteken, dat is gedefinieerd door sep, of een regeleinde in de invoer wordt gevonden.
  • SKIP_VALUE: Als er niet-gebeeldde aanhalingstekens worden gevonden in de invoer, wordt de inhoud die voor de opgegeven waarde wordt geparseerd overgeslagen (totdat het volgende scheidingsteken is gevonden) en wordt de waarde die is ingesteld in nullValue in plaats daarvan geproduceerd.
  • RAISE_ERROR: Als er niet-ontsnapte aanhalingstekens in de invoer worden gevonden, is een
    TextParsingException zal worden opgeworpen.

Standaardwaarde: STOP_AT_DELIMITER

XML Opties

Optie Beschrijving Omvang
rowTag De rijtag van de XML-bestanden die moeten worden behandeld als een rij. In het voorbeeld-XML <books> <book><book>...<books>is bookde juiste waarde. Dit is een vereiste optie. lezen
samplingRatio Definieert een fractie van rijen die worden gebruikt voor schemadeductie. Ingebouwde XML-functies negeren deze optie. Standaard: 1.0. lezen
excludeAttribute Of kenmerken in elementen moeten worden uitgesloten. Standaard: false. lezen
mode Modus voor het verwerken van beschadigde records tijdens het parseren.
PERMISSIVE: Voor beschadigde records plaatst u de ongeldige tekenreeks in een veld dat is geconfigureerd door columnNameOfCorruptRecorden stelt u onjuiste velden in op null. Als u beschadigde records wilt behouden, kunt u een string typeveld met de naam columnNameOfCorruptRecord instellen in een door de gebruiker gedefinieerd schema. Als een schema het veld niet heeft, worden beschadigde records verwijderd tijdens het parseren. Wanneer een schema wordt afgeleid, voegt de parser impliciet een columnNameOfCorruptRecord-veld toe in een uitvoerschema.
DROPMALFORMED: Hiermee worden beschadigde records genegeerd. Deze modus wordt niet ondersteund voor ingebouwde XML-functies.
FAILFAST: Genereert een uitzondering wanneer de parser tegenkomt corrupte records.
lezen
inferSchema Wanneer true, wordt geprobeerd om een geschikt type af te leiden voor elke resulterende DataFrame-kolom. Als false, zijn alle resulterende kolommen van string type. Standaardinstelling:
true. Ingebouwde XML-functies negeren deze optie.
lezen
columnNameOfCorruptRecord Hiermee kunt u de naam van het nieuwe veld wijzigen dat een ongeldige tekenreeks bevat die is gemaakt door
PERMISSIVE modus. Standaard: spark.sql.columnNameOfCorruptRecord.
lezen
attributePrefix Het voorvoegsel voor kenmerken om kenmerken te onderscheiden van elementen. Dit is het voorvoegsel voor veldnamen. Standaard is _. Kan leeg zijn voor het lezen van XML, maar niet voor schrijven. lezen, schrijven
valueTag De tag die wordt gebruikt voor de karaktergegevens binnen elementen die ook attributen of kindelementen bevatten. Gebruiker kan het valueTag veld in het schema opgeven of het wordt automatisch toegevoegd tijdens schemadeductie wanneer tekengegevens aanwezig zijn in elementen met andere elementen of kenmerken. Standaardwaarde: _VALUE lezen, schrijven
encoding Voor het lezen decodeert u de XML-bestanden op basis van het opgegeven coderingstype. Voor schrijven geeft u codering (charset) van opgeslagen XML-bestanden op. Ingebouwde XML-functies negeren deze optie. Standaard: UTF-8. lezen, schrijven
ignoreSurroundingSpaces Hiermee definieert u of witruimtes rondom waarden tijdens het lezen moeten worden overgeslagen. Standaard: true. Gegevens die alleen uit witruimte bestaan worden genegeerd. lezen
rowValidationXSDPath Pad naar een optioneel XSD-bestand dat wordt gebruikt om de XML voor elke rij afzonderlijk te valideren. Rijen die niet valideren, worden behandeld als parsefouten zoals hierboven. De XSD heeft verder geen invloed op het verstrekte of afgeleide schema. lezen
ignoreNamespace Als true de voorvoegsels van namespaces op XML-elementen en -kenmerken worden genegeerd. Tags <abc:author> en <def:author>, bijvoorbeeld, worden behandeld alsof ze alleen <author>zijn. Naamruimten kunnen niet worden genegeerd op het rowTag element, alleen de leesbare kinderen. XML-parsering is niet naamruimtebewust, zelfs niet als false. Standaard: false. lezen
timestampFormat Aangepaste tekenreeks voor tijdstempelnotatie die de datum/tijd-patroonnotatie volgt. Dit is van toepassing op timestamp het type. Standaard: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. lezen, schrijven
timestampNTZFormat Aangepaste opmaakreeks voor tijdstempel zonder tijdzone volgens het datetime-patroon. Dit is van toepassing op het type TimestampNTZType. Standaardinstelling:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
lezen, schrijven
dateFormat Aangepaste datumnotatiestring die het datum/tijd-patroon volgt. Dit is van toepassing op het datumtype. Standaard: yyyy-MM-dd. lezen, schrijven
locale Hiermee stelt u een locale in als taaltag in IETF BCP 47-indeling. Wordt bijvoorbeeld locale gebruikt tijdens het parseren van datums en tijdstempels. Standaard: en-US. lezen
rootTag Hoofdtag van de XML-bestanden. Bijvoorbeeld, in <books> <book><book>...</books> is de juiste waarde books. U kunt basiskenmerken opnemen door een waarde op te geven zoals books foo="bar". Standaard: ROWS. schrijven
declaration Inhoud van XML-declaratie die moet worden geschreven aan het begin van elk XML-uitvoerbestand, vóór de rootTag. Bijvoorbeeld, een waarde van foo veroorzaakt dat <?xml foo?> wordt geschreven. Ingesteld op een lege tekenreeks die moet worden onderdrukt. Standaardwaarde: version="1.0"
encoding="UTF-8" standalone="yes".
schrijven
arrayElementName De naam van het XML-element dat elk element van een kolom met matrixwaarden omsluit bij het schrijven. Standaard: item. schrijven
nullValue Hiermee stelt u de tekenreeksweergave van een null-waarde in. Standaard: tekenreeks null. Als dit het geval is null, schrijft de parser geen kenmerken en elementen voor velden. lezen, schrijven
compression Compressiecode die moet worden gebruikt bij het opslaan in een bestand. Dit kan een van de bekende niet-hoofdlettergevoelige verkorte namen zijn (none, bzip2, gziplz4en snappy
deflate). Ingebouwde XML-functies negeren deze optie. Standaard: none.
schrijven
validateName Als waar, wordt er een fout weergegeven bij het mislukken van de validatie van XML-elementnamen. SQL-veldnamen kunnen bijvoorbeeld spaties bevatten, maar XML-elementnamen kunnen dat niet. Standaard:
true.
schrijven
readerCaseSensitive Hiermee geeft u het hoofdlettergevoeligheidsgedrag op wanneer rescuedDataColumn is ingeschakeld. Indien waar, redt u de gegevenskolommen waarvan de namen verschillen per geval van het schema; lees anders de gegevens op een niet-hoofdlettergevoelige manier. Standaard: true. lezen
rescuedDataColumn Of u alle gegevens wilt verzamelen die niet kunnen worden geparseerd vanwege een niet-overeenkomend gegevenstype en niet-overeenkomende schema's (inclusief kolombehuizing) naar een afzonderlijke kolom. Deze kolom wordt standaard opgenomen bij het gebruik van automatisch laden. Voor meer informatie, zie Wat is de kolom met geredde gegevens?.
COPY INTO (verouderd) biedt geen ondersteuning voor de kolom met geredde gegevens, omdat u het schema niet handmatig kunt instellen met behulp van COPY INTO. Databricks raadt het gebruik van autolaadprogramma's aan voor de meeste opnamescenario's.
Standaard: Geen.
lezen

PARQUET Opties

Optie
datetimeRebaseMode
Typ: String
Hiermee regelt u de herindeling van de DATUM- en TIJDSTEMPEL-waarden tussen de Juliaanse en de proleptische Gregoriaanse kalenders. Toegestane waarden: EXCEPTION, LEGACYen
CORRECTED.
Standaardwaarde: LEGACY
int96RebaseMode
Typ: String
Hiermee regelt u de rebasing van de INT96-tijdstempelwaarden bij Julian- en Proleptische Gregoriaanse kalenders. Toegestane waarden: EXCEPTION, LEGACYen
CORRECTED.
Standaardwaarde: LEGACY
mergeSchema
Typ: Boolean
Of u het schema wilt afleiden over meerdere bestanden en het schema van elk bestand wilt samenvoegen.
Standaardwaarde: false
readerCaseSensitive
Typ: Boolean
Hiermee specificeert u de hoofdlettergevoeligheid wanneer rescuedDataColumn is ingeschakeld. Indien waar, redt u de gegevenskolommen waarvan de namen verschillen per geval van het schema; lees anders de gegevens op een niet-hoofdlettergevoelige manier.
Standaardwaarde: true
rescuedDataColumn
Typ: String
Of men alle gegevens moet verzamelen die niet kunnen worden geparseerd vanwege: een gegevenstypemismatch en een schemamismatch (inclusief kolomhoezen) in een aparte kolom. Deze kolom wordt standaard opgenomen bij het gebruik van automatisch laden. Voor meer informatie, raadpleeg Wat is de kolom met geredde gegevens?.
COPY INTO (verouderd) biedt geen ondersteuning voor de kolom met geredde gegevens, omdat u het schema niet handmatig kunt instellen met behulp van COPY INTO. Databricks raadt het gebruik van autolaadprogramma's aan voor de meeste opnamescenario's.
Standaardwaarde: Geen

AVRO Opties

Optie
avroSchema
Typ: String
Optioneel schema dat wordt aangeleverd door een gebruiker in Avro-formaat. Bij het lezen van Avro kan deze optie worden ingesteld op een ontwikkeld schema, dat compatibel is maar anders is met het werkelijke Avro-schema. Het deserialisatieschema is consistent met het ontwikkelde schema. Als u bijvoorbeeld een ontwikkeld schema instelt dat één extra kolom met een standaardwaarde bevat, bevat het leesresultaat ook de nieuwe kolom.
Standaardwaarde: Geen
datetimeRebaseMode
Typ: String
Hiermee regelt u de herindeling van de DATUM- en TIJDSTEMPEL-waarden tussen de Juliaanse en de proleptische Gregoriaanse kalenders. Toegestane waarden: EXCEPTION, LEGACYen
CORRECTED.
Standaardwaarde: LEGACY
mergeSchema
Typ: Boolean
Of u het schema wilt afleiden over meerdere bestanden en het schema van elk bestand wilt samenvoegen.
mergeSchema Avro versoepelt de gegevenstypen niet.
Standaardwaarde: false
readerCaseSensitive
Typ: Boolean
Hiermee specificeert u de hoofdlettergevoeligheid wanneer rescuedDataColumn is ingeschakeld. Indien waar, redt u de gegevenskolommen waarvan de namen verschillen per geval van het schema; lees anders de gegevens op een niet-hoofdlettergevoelige manier.
Standaardwaarde: true
rescuedDataColumn
Typ: String
Of men zou moeten overwegen om alle gegevens die niet geparsed kunnen worden vanwege een gegevenstypemismatch en een schemamismatch (inclusief verschillen in kolommencasering) in een aparte kolom te verzamelen. Deze kolom wordt standaard opgenomen bij het gebruik van automatisch laden.
COPY INTO (verouderd) biedt geen ondersteuning voor de kolom met geredde gegevens, omdat u het schema niet handmatig kunt instellen met behulp van COPY INTO. Databricks raadt het gebruik van autolaadprogramma's aan voor de meeste opnamescenario's.
Voor meer informatie, raadpleeg Wat is de kolom met geredde gegevens?.
Standaardwaarde: Geen

BINARYFILE Opties

Binaire bestanden hebben geen extra configuratieopties.

TEXT Opties

Optie
encoding
Typ: String
De naam van de codering van de tekstbestanden. Zie java.nio.charset.Charset voor een lijst met opties.
Standaardwaarde: UTF-8
lineSep
Typ: String
Een reeks tussen twee opeenvolgende TEKST-records.
Standaardwaarde: Geen, die betrekking heeft op \ren \r\n\n
wholeText
Typ: Boolean
Of u een bestand als één record wilt lezen.
Standaardwaarde: false

ORC Opties

Optie
mergeSchema
Typ: Boolean
Of u het schema wilt afleiden over meerdere bestanden en het schema van elk bestand wilt samenvoegen.
Standaardwaarde: false