COPY INTO

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Bir dosya konumundaki verileri Delta tablosuna yükler. Bu yeniden denenebilir ve etkili bir işlemdir; zaten yüklenmiş olan kaynak konumdaki dosyalar atlanır. Örnekler için bkz . COPY INTO kullanan yaygın veri yükleme desenleri.

Sözdizimi

COPY INTO target_table
  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) ] ) ]

Parametreler

  • target_table

    Var olan bir Delta tablosunu tanımlar. target_table zamana bağlı belirtim içermemelidir.

    Tablo adı aşağıdaki gibi delta.`/path/to/table` bir konum biçiminde sağlanmışsa Unity Kataloğu, yazılmakta olan konumlara erişimi yönetebilir. Dış konuma şu şekilde yazabilirsiniz:

    • Konumu dış konum olarak tanımlama ve bu dış konum üzerinde izinlere sahip olma WRITE FILES .
    • Kullanarak bir konuma yazma yetkisi sağlayan adlandırılmış depolama kimlik bilgileri üzerinde izinlere sahip olma WRITE FILES : COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)

    Daha fazla ayrıntı için bkz. Unity Kataloğu'nu kullanarak bulut nesne depolamaya Bağlan.

  • source

    Verilerin yüklenecek dosya konumu. Bu konumdaki dosyaların içinde FILEFORMATbelirtilen biçime sahip olması gerekir. Konum, URI biçiminde sağlanır.

    Kaynak konuma erişim şu şekilde sağlanabilir:

    • credential_name

      Depolama konumuna erişmek veya bu konuma yazmak için kullanılan kimlik bilgilerinin isteğe bağlı adı. Bu kimlik bilgilerini yalnızca dosya konumu bir dış konuma dahil değilse kullanırsınız. Bkz. credential_name.

    • Satır içi geçici kimlik bilgileri.

    • Kaynak konumu dış konum olarak tanımlama ve Unity Kataloğu aracılığıyla dış konum üzerinde izinlere sahip olma READ FILES .

    • Unity Kataloğu aracılığıyla bir konumdan okuma yetkisi sağlayan izinlere sahip READ FILES adlandırılmış depolama kimlik bilgilerini kullanma.

    Yol, kullanma izniniz olan bir dış konum olarak tanımlanmışsa satır içi veya adlandırılmış kimlik bilgileri sağlamanız gerekmez. Daha fazla ayrıntı için bkz . Bulut depolamayı Azure Databricks'e bağlamak için dış konum oluşturma.

    Not

    Kaynak dosya yolu bir kök yolsa, lütfen dosya yolunun sonuna eğik çizgi (/) ekleyin; örneğin, s3://my-bucket/.

    Kabul edilen kimlik bilgisi seçenekleri şunlardır:

    • AZURE_SAS_TOKENADLS 2. Nesil ve Azure Blob Depolama için
    • AWS_ACCESS_KEY, AWS_SECRET_KEYve AWS_SESSION_TOKEN AWS S3 için

    Kabul edilen şifreleme seçenekleri şunlardır:

    • TYPE = 'AWS_SSE_C', ve MASTER_KEY AWS S3 için

Bkz . Copy INTO kullanarak geçici kimlik bilgileriyle veri yükleme.

  • SELECT expression_list

    Delta tablosuna kopyalamadan önce kaynak verilerden belirtilen sütunları veya ifadeleri seçer. İfadeler, pencere işlemleri de dahil olmak üzere deyimlerle SELECT kullandığınız her şey olabilir. Toplama ifadelerini yalnızca genel toplamalar için kullanabilirsiniz; bu söz dizimine sahip sütunlarda kullanamazsınız GROUP BY .

  • FILEFORMAT = data_source

    Yüklenecek kaynak dosyaların biçimi. CSV, , JSON, AVRO, , ORC, PARQUET, TEXTBINARYFILE.

  • VALIDATE

    Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 10.4 LTS ve üzeri

    Bir tabloya yüklenecek veriler doğrulanır ancak tabloya yazılmaz. Bu doğrulamalar şunlardır:

    • Verilerin ayrıştırılıp ayrıştırılamayacağı.
    • Şemanın tablonunkiyle eşleşip eşleşmediği veya şemanın geliştirilmesi gerekip gerekmediği.
    • Tüm null atanabilirlik ve denetim kısıtlamalarının karşılanıp karşılanmadığı.

    Varsayılan değer, yüklenecek tüm verileri doğrulamaktır. anahtar sözcüğüyle ROWS doğrulanacak bir dizi satır sağlayabilirsiniz, örneğin VALIDATE 15 ROWS. deyimi, COPY INTO anahtar sözcükle 50'den az bir sayı kullanıldığında 50 satır veya daha az olan verilerin önizlemesini ROWS döndürür.

  • FILES

    Yüklenecek dosya adlarının listesi ve 1000 dosya sınırı. ile PATTERNbelirtilemez.

  • PATTERN

    Kaynak dizinden yüklenecek dosyaları tanımlayan bir glob deseni. ile FILESbelirtilemez.

    Desen Açıklama
    ? Herhangi bir tek karakterle eşleşir
    * Sıfır veya daha çok sayıda karakterle eşleşir
    [abc] {a,b,c} karakter kümesindeki tek bir karakterle eşleşir.
    [a-z] {a... karakter aralığındaki tek bir karakterle eşleşir. z}.
    [^a] {a} karakter kümesinden veya aralıktan olmayan tek bir karakterle eşleşir. Karakterin ^ , açılış köşeli ayraçlarının hemen sağ kısmında yer alması gerektiğini unutmayın.
    {ab,cd} {ab, cd} dize kümesindeki bir dizeyle eşleşir.
    {ab,c{de, fh}} {ab, cde, cfh} dize kümesindeki bir dizeyle eşleşir.
  • FORMAT_OPTIONS

    Belirtilen biçim için Apache Spark veri kaynağı okuyucusna geçirilecek seçenekler. Bkz. Her dosya biçimi için biçim seçenekleri .

  • COPY_OPTIONS

    Komutun çalışmasını COPY INTO denetleme seçenekleri.

    • force: boolean, varsayılan false. olarak ayarlanırsa true, eşitlik devre dışı bırakılır ve dosyalar daha önce yüklenip yüklenmediklerine bakılmaksızın yüklenir.
    • mergeSchema: boolean, varsayılan false. olarak ayarlanırsa true, şema gelen verilere göre geliştirilebilir.

Eşzamanlı olarak çağırma COPY INTO

COPY INTO aynı tabloda eşzamanlı çağrıları destekler. Ayrı giriş dosyası kümelerinde eşzamanlı olarak çağrıldığı süreceCOPY INTO, her çağrının sonunda başarılı olması gerekir, aksi takdirde bir işlem çakışması alırsınız. COPY INTO performansı geliştirmek için eşzamanlı olarak çağrılmamalıdır; birden çok dosya içeren tek COPY INTO bir komut genellikle her birinde tek bir dosyayla eşzamanlı COPY INTO komutları çalıştırmaktan daha iyi performans gösterir. COPY INTO şu durumlarda eşzamanlı olarak çağrılabilir:

  • Birden çok veri üreticisinin koordine etmek için kolay bir yolu yoktur ve tek bir çağrı yapamaz.
  • Çok büyük bir dizin alt dizin tarafından alt dizin alınabiliyorsa. Çok fazla sayıda dosya içeren dizinleri alırken Databricks mümkün olduğunda Otomatik Yükleyici'nin kullanılmasını önerir.

Dosya meta verilerine erişme

Dosya tabanlı veri kaynaklarının meta verilerine erişmeyi öğrenmek için bkz . Dosya meta verileri sütunu.

Biçim seçenekleri

Genel seçenekler

Aşağıdaki seçenekler tüm dosya biçimleri için geçerlidir.

Seçenek
ignoreCorruptFiles

Tür: Boolean

Bozuk dosyaların yoksayılıp yoksayılmayacağı. True ise, Bozuk dosyalarla karşılaşıldığında Spark işleri çalışmaya devam eder ve okunan içerik yine döndürülür. içinde olduğu gibi numSkippedCorruptFiles gözlemlenebilir
operationMetrics Delta Lake geçmişinin sütunu. Databricks Runtime 11.3 LTS ve üzerinde kullanılabilir.

Varsayılan değer: false
ignoreMissingFiles

Tür: Boolean

Eksik dosyaların yoksayılıp yoksayılmayacağı. Doğruysa, Spark işleri eksik dosyalarla karşılaşıldığında çalışmaya devam eder ve okunan içerik yine döndürülür. Databricks Runtime 11.3 LTS ve üzerinde kullanılabilir.

Varsayılan değer: false (true için COPY INTO)
modifiedAfter

Tür: Timestamp String, örneğin, 2021-01-01 00:00:00.000000 UTC+0

Sağlanan zaman damgasından sonra değişiklik zaman damgasına sahip dosyaları almak için isteğe bağlı bir zaman damgası.

Varsayılan değer: Yok
modifiedBefore

Tür: Timestamp String, örneğin, 2021-01-01 00:00:00.000000 UTC+0

Sağlanan zaman damgasından önce değişiklik zaman damgası olan dosyaları almak için isteğe bağlı bir zaman damgası.

Varsayılan değer: Yok
pathGlobFilter veya fileNamePattern

Tür: String

Dosya seçmeye yönelik olası bir glob deseni. Eşdeğer
PATTERNiçinde .COPY INTO fileNamePattern içinde read_fileskullanılabilir.

Varsayılan değer: Yok
recursiveFileLookup

Tür: Boolean

Şema çıkarımı sırasında bölüm çıkarımının atlanıp atlanmadığı. Bu, hangi dosyaların yüklendiğini etkilemez.

Varsayılan değer: false

JSON Seçenekler

Seçenek
allowBackslashEscapingAnyCharacter

Tür: Boolean

Ters eğik çizginin başarılı olan herhangi bir karakterden kaçmasına izin verilip verilmeyeceği. Etkinleştirilmemişse, yalnızca JSON belirtimi tarafından açıkça listelenen karakterlerden kaçılabilir.

Varsayılan değer: false
allowComments

Tür: Boolean

Ayrıştırılmış içerik içinde Java, C ve C++ stil açıklamalarının ('/', '*'ve '//' çeşitlerinin) kullanılmasına izin verilip verilmeyeceği.

Varsayılan değer: false
allowNonNumericNumbers

Tür: Boolean

Bir sayı olmayan (NaN) belirteç kümesinin yasal kayan sayı değerleri olarak izin verilip verilmeyeceği.

Varsayılan değer: true
allowNumericLeadingZeros

Tür: Boolean

İntegral sayıların ek (yoksayılabilir) sıfırlarla başlamasına izin verilip verilmeyeceği (örneğin, 000001).

Varsayılan değer: false
allowSingleQuotes

Tür: Boolean

Dizeleri (adlar ve Dize değerleri) alıntılama için tek tırnak (kesme işareti, karakter '\') kullanımına izin verilip verilmeyeceği.

Varsayılan değer: true
allowUnquotedControlChars

Tür: Boolean

JSON dizelerinin sıralanmamış denetim karakterleri (sekme ve satır besleme karakterleri dahil olmak üzere 32'den küçük ASCII karakterleri) içermesine izin verilip verilmeyeceği.

Varsayılan değer: false
allowUnquotedFieldNames

Tür: Boolean

Okunmamış alan adlarının kullanımına izin verilip verilmeyeceği (JavaScript tarafından izin verilir, ancak JSON belirtimi tarafından izin verilmez).

Varsayılan değer: false
badRecordsPath

Tür: String

Hatalı JSON kayıtları hakkındaki bilgileri kaydetmek için dosyaları depolama yolu.

Varsayılan değer: Yok
columnNameOfCorruptRecord

Tür: String

Hatalı biçimlendirilmiş ve ayrıştırılamayan kayıtları depolama sütunu. mode ayrıştırma için olarak DROPMALFORMEDayarlanırsa, bu sütun boş olur.

Varsayılan değer: _corrupt_record
dateFormat

Tür: String

Tarih dizelerini ayrıştırma biçimi.

Varsayılan değer: yyyy-MM-dd
dropFieldIfAllNull

Tür: Boolean

Şema çıkarımı sırasında tüm null değerlerin veya boş dizilerin ve yapıların sütunlarının yoksayılıp yoksayılmayacağı.

Varsayılan değer: false
encoding veya charset

Tür: String

JSON dosyalarının kodlama adı. Seçeneklerin listesi için bkz java.nio.charset.Charset . ve UTF-32 olduğunda multilinetruekullanamazsınızUTF-16.

Varsayılan değer: UTF-8
inferTimestamp

Tür: Boolean

Zaman damgası dizelerinin olarak TimestampTypeçıkarılıp çıkarılmayacağı. Olarak ayarlandığında
true, şema çıkarımı önemli ölçüde daha uzun sürebilir. Otomatik Yükleyici ile kullanmayı etkinleştirmeniz cloudFiles.inferColumnTypes gerekir.

Varsayılan değer: false
lineSep

Tür: String

Ardışık iki JSON kaydı arasındaki dize.

Varsayılan değer: Hiçbiri, , \r\nve'yi kapsar \r\n
locale

Tür: String

Tanımlayıcı java.util.Locale . JSON içinde varsayılan tarih, zaman damgası ve ondalık ayrıştırma işlemini etkiler.

Varsayılan değer: US
mode

Tür: String

Hatalı biçimlendirilmiş kayıtları işleme etrafında ayrıştırıcı modu. 'nin biri 'PERMISSIVE'
'DROPMALFORMED'veya 'FAILFAST'.

Varsayılan değer: PERMISSIVE
multiLine

Tür: Boolean

JSON kayıtlarının birden çok satıra yayılıp yayılmadığı.

Varsayılan değer: false
prefersDecimal

Tür: Boolean

Mümkün olduğunda kayan veya çift tür yerine dizeleri olarak DecimalType çıkarsamaya çalışır. Ayrıca, etkinleştirerek şema çıkarımı kullanmanız gerekir
inferSchema veya Otomatik Yükleyici ile kullanma cloudFiles.inferColumnTypes .

Varsayılan değer: false
primitivesAsString

Tür: Boolean

Sayı ve boole gibi ilkel türlerin olarak StringTypeçıkarılıp çıkarılmayacağı.

Varsayılan değer: false
readerCaseSensitive

Tür: Boolean

Etkinleştirildiğinde rescuedDataColumn büyük/küçük harf duyarlılığı davranışını belirtir. True ise, adları şemadan büyük/küçük harfe göre farklılık gösteren veri sütunlarını kurtarın; aksi takdirde, verileri büyük/küçük harfe duyarlı olmayan bir şekilde okuyun. Databricks Runtime'da kullanılabilir
13.3 ve üzeri.

Varsayılan değer: true
rescuedDataColumn

Tür: String

Veri türü uyuşmazlığı veya şema uyuşmazlığı (sütun kasası dahil) nedeniyle ayrıştırılmayan tüm verilerin ayrı bir sütuna toplanıp toplanmayacağı. Bu sütun, Otomatik Yükleyici kullanılırken varsayılan olarak eklenir. Diğer ayrıntılar için kurtarılan veri sütunu nedir? konusuna bakın.

Varsayılan değer: Yok
timestampFormat

Tür: String

Zaman damgası dizelerini ayrıştırma biçimi.

Varsayılan değer: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Tür: String

java.time.ZoneId Zaman damgalarını ve tarihleri ayrıştırırken kullanılacak.

Varsayılan değer: Yok

CSV Seçenekler

Seçenek
badRecordsPath

Tür: String

Bozuk CSV kayıtları hakkındaki bilgileri kaydetmek için dosyaları depolama yolu.

Varsayılan değer: Yok
charToEscapeQuoteEscaping

Tür: Char

Tırnak işaretinden kaçmak için kullanılan karakter. Örneğin, aşağıdaki kayıt için: [ " a\\", b ]

* kaçış '\' karakteri tanımsızsa, kayıt ayrıştırılmaz. Ayrıştırıcı karakterleri okur: [a],[\],["],[,],[ ],[b] ve kapanış tırnak işareti bulamadığından bir hata oluşturur.
* kaçış '\' karakteri olarak '\'tanımlanırsa, kayıt 2 değerle okunur: [a\] ve [b].

Varsayılan değer: '\0'
columnNameOfCorruptRecord

> [! NOT] >> Otomatik Yükleyici için desteklenir. için COPY INTOdesteklenmez.

Tür: String

Hatalı biçimlendirilmiş ve ayrıştırılamayan kayıtları depolama sütunu. mode ayrıştırma için olarak DROPMALFORMEDayarlanırsa, bu sütun boş olur.

Varsayılan değer: _corrupt_record
comment

Tür: Char

Metin satırının başında bulunduğunda satır açıklamasını temsil eden karakteri tanımlar. Açıklama atlama özelliğini devre dışı bırakmak için kullanın '\0' .

Varsayılan değer: '\u0000'
dateFormat

Tür: String

Tarih dizelerini ayrıştırma biçimi.

Varsayılan değer: yyyy-MM-dd
emptyValue

Tür: String

Boş bir değerin dize gösterimi.

Varsayılan değer: ""
encoding veya charset

Tür: String

CSV dosyalarının kodlama adı. Seçenekler listesi için bkz java.nio.charset.Charset . UTF-16 ve UTF-32 olduğunda multilinetruekullanılamaz.

Varsayılan değer: UTF-8
enforceSchema

Tür: Boolean

Belirtilen veya çıkarsanan şemanın CSV dosyalarına zorla uygulanıp uygulanmayacağı. Seçenek etkinleştirilirse, CSV dosyalarının üst bilgileri yoksayılır. Verileri kurtarmak ve şema evrimine izin vermek için Otomatik Yükleyici kullanılırken bu seçenek varsayılan olarak yoksayılır.

Varsayılan değer: true
escape

Tür: Char

Verileri ayrıştırırken kullanılacak kaçış karakteri.

Varsayılan değer: '\'
header

Tür: Boolean

CSV dosyalarının üst bilgi içerip içermediği. Otomatik Yükleyici, şema çıkarılırken dosyaların üst bilgileri olduğunu varsayar.

Varsayılan değer: false
ignoreLeadingWhiteSpace

Tür: Boolean

Ayrıştırılan her değer için baştaki boşluklar yoksayılıp yoksayılmayacağı.

Varsayılan değer: false
ignoreTrailingWhiteSpace

Tür: Boolean

Ayrıştırılan her değer için sondaki boşlukların yoksayılıp yoksayılmayacağı.

Varsayılan değer: false
inferSchema

Tür: Boolean

Ayrıştırılan CSV kayıtlarının veri türlerinin çıkarılıp çıkarılmayacağı veya tüm sütunların içinde StringTypeolduğu varsayılıp varsayılmayacağı. olarak ayarlanırsa trueveriler üzerinde ek bir geçiş gerektirir. Otomatik Yükleyici için bunun yerine kullanın cloudFiles.inferColumnTypes .

Varsayılan değer: false
lineSep

Tür: String

Ardışık iki CSV kaydı arasındaki dize.

Varsayılan değer: Hiçbiri, , \r\nve'yi kapsar \r\n
locale

Tür: String

Tanımlayıcı java.util.Locale . CSV içinde varsayılan tarih, zaman damgası ve ondalık ayrıştırma işlemini etkiler.

Varsayılan değer: US
maxCharsPerColumn

Tür: Int

Ayrıştırmak için bir değerden beklenen karakter sayısı üst sınırı. Bellek hatalarını önlemek için kullanılabilir. Varsayılan olarak -1değeri, sınırsız anlamına gelir.

Varsayılan değer: -1
maxColumns

Tür: Int

Bir kaydın kaç sütuna sahip olabileceğinin sabit sınırı.

Varsayılan değer: 20480
mergeSchema

Tür: Boolean

Şemanın birden çok dosya arasında çıkarılıp çıkarılmayacağı ve her dosyanın şemasının birleştirilip birleştirmeyeceği. Şema çıkarıldığında Otomatik Yükleyici için varsayılan olarak etkindir.

Varsayılan değer: false
mode

Tür: String

Hatalı biçimlendirilmiş kayıtları işleme etrafında ayrıştırıcı modu. 'nin biri 'PERMISSIVE'
'DROPMALFORMED''FAILFAST've .

Varsayılan değer: PERMISSIVE
multiLine

Tür: Boolean

CSV kayıtlarının birden çok satıra yayılıp yayılmadığı.

Varsayılan değer: false
nanValue

Tür: String

ve DoubleType sütunlarını ayrıştırırken sayı olmayan bir değerin FloatType dize gösterimi.

Varsayılan değer: "NaN"
negativeInf

Tür: String

Veya sütunları ayrıştırırken FloatTypeDoubleType negatif sonsuzluğun dize gösterimi.

Varsayılan değer: "-Inf"
nullValue

Tür: String

Null değerin dize gösterimi.

Varsayılan değer: ""
parserCaseSensitive (kullanım dışı)

Tür: Boolean

Dosyalar okunurken, üst bilgide bildirilen sütunların şema büyük/küçük harfle hassas bir şekilde hizalanıp hizalanmayacağı. Bu, Otomatik Yükleyici için varsayılan olarakdır true . Büyük/küçük harfe göre farklılık gösteren sütunlar, etkinse içinde rescuedDataColumn kurtarılır. Bu seçenek yerine kullanım dışı readerCaseSensitivebırakılmıştır.

Varsayılan değer: false
positiveInf

Tür: String

Veya sütunları ayrıştırırken FloatTypeDoubleType pozitif sonsuzluğun dize gösterimi.

Varsayılan değer: "Inf"
preferDate

Tür: Boolean

Mümkün olduğunda dizeleri zaman damgası yerine tarih olarak çıkarma girişiminde bulunur. Ayrıca, etkinleştirerek inferSchema veya kullanarak şema çıkarımı kullanmanız gerekir
cloudFiles.inferColumnTypes otomatik yükleyici ile.

Varsayılan değer: true
quote

Tür: Char

Alan sınırlayıcısının değerin bir parçası olduğu değerlerden kaçış için kullanılan karakter.

Varsayılan değer: "
readerCaseSensitive

Tür: Boolean

Etkinleştirildiğinde rescuedDataColumn büyük/küçük harf duyarlılığı davranışını belirtir. True ise, adları şemadan büyük/küçük harfe göre farklılık gösteren veri sütunlarını kurtarın; aksi takdirde, verileri büyük/küçük harfe duyarlı olmayan bir şekilde okuyun.

Varsayılan değer: true
rescuedDataColumn

Tür: String

Veri türü uyuşmazlığı ve şema uyuşmazlığı (sütun büyük/küçük harf dahil) nedeniyle ayrıştırılmayan tüm verilerin ayrı bir sütuna toplanıp toplanmayacağı. Bu sütun, Otomatik Yükleyici kullanılırken varsayılan olarak eklenir. Daha fazla ayrıntı için kurtarılan veri sütunu nedir? konusuna bakın.

Varsayılan değer: Yok
sep veya delimiter

Tür: String

Sütunlar arasındaki ayırıcı dize.

Varsayılan değer: ","
skipRows

Tür: Int

CSV dosyasının başından yoksayılması gereken satır sayısı (açıklamalı ve boş satırlar dahil). header True ise, üst bilgi ilk sıralanmamış ve sıkıştırılmamış satır olur.

Varsayılan değer: 0
timestampFormat

Tür: String

Zaman damgası dizelerini ayrıştırma biçimi.

Varsayılan değer: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Tür: String

java.time.ZoneId Zaman damgalarını ve tarihleri ayrıştırırken kullanılacak.

Varsayılan değer: Yok
unescapedQuoteHandling

Tür: String

Ayarlanmamış tırnakları işleme stratejisi. İzin verilen seçenekler:

* STOP_AT_CLOSING_QUOTE: Girişte serbest tırnaklar bulunursa, tırnak karakterini biriktirin ve kapanış teklifi bulunana kadar değeri tırnak içinde bir değer olarak ayrıştırmaya devam edin.
* BACK_TO_DELIMITER: Girişte sıralanmamış tırnak işaretleri bulunursa, değeri tırnak içine alınmamış bir değer olarak düşünün. Bu, ayrıştırıcının tarafından tanımlanan sep sınırlayıcı bulunana kadar geçerli ayrıştırılan değerin tüm karakterlerini toplamasını sağlar. Değerde sınırlayıcı bulunmazsa, ayrıştırıcı bir sınırlayıcı veya satır sonu bulunana kadar girişteki karakterleri biriktirmeye devam eder.
* STOP_AT_DELIMITER: Girişte sıralanmamış tırnak işaretleri bulunursa, değeri tırnak içine alınmamış bir değer olarak düşünün. Bu, ayrıştırıcının tarafından septanımlanan sınırlayıcı veya girişte bir satır sonu bulunana kadar tüm karakterleri birikmesini sağlar.
* SKIP_VALUE: Girişte ayarlanmamış tırnak işaretleri bulunursa, verilen değer için ayrıştırılan içerik atlanır (bir sonraki sınırlayıcı bulunana kadar) ve bunun yerine içinde nullValue ayarlanan değer oluşturulur.
* RAISE_ERROR: Girişte ayarlanmamış tırnak işaretleri bulunursa,
TextParsingException atılır.

Varsayılan değer: STOP_AT_DELIMITER

XML Seçenekler

Seçenek Açıklama Scope
rowTag Satır olarak ele almak için XML dosyalarının satır etiketi. Örnek XML'de <books> <book><book>...<books>, uygun değer şeklindedir book. Bu gerekli bir seçenektir. okuma
samplingRatio Şema çıkarımı için kullanılan satırların bir bölümünü tanımlar. XML yerleşik işlevleri bu seçeneği yoksayar. Varsayılan: 1.0. okuma
excludeAttribute Öğelerdeki özniteliklerin dışlanıp dışlanmaymayacağı. Varsayılan: false. okuma
mode Ayrıştırma sırasında bozuk kayıtlarla ilgilenme modu.

PERMISSIVE: Bozuk kayıtlar için, hatalı biçimlendirilmiş dizeyi tarafından columnNameOfCorruptRecordyapılandırılan bir alana yerleştirir ve hatalı biçimlendirilmiş alanları olarak nullayarlar. Bozuk kayıtları tutmak için, kullanıcı tanımlı şemada string adlı columnNameOfCorruptRecord bir tür alanı ayarlayabilirsiniz. Bir şemada alan yoksa, ayrıştırma sırasında bozuk kayıtlar bırakılır. Bir şema çıkarıldığında, ayrıştırıcı bir çıkış şemasına örtük olarak bir columnNameOfCorruptRecord alan ekler.

DROPMALFORMED: Bozuk kayıtları yoksayar. Bu mod, XML yerleşik işlevleri için desteklenmez.

FAILFAST: Ayrıştırıcı bozuk kayıtları karşıladığında bir özel durum oluşturur.
okuma
inferSchema ise true, sonuçta elde edilen her DataFrame sütunu için uygun bir tür çıkarsamaya çalışır. ise false, elde edilen tüm sütunlar türündedir string . Varsayılan:
true. XML yerleşik işlevleri bu seçeneği yoksayar.
okuma
columnNameOfCorruptRecord Tarafından oluşturulan hatalı biçimlendirilmiş bir dize içeren yeni alanın yeniden adlandırılmasına izin verir
PERMISSIVE Modu. Varsayılan: spark.sql.columnNameOfCorruptRecord.
okuma
attributePrefix Öznitelikleri öğelerden ayırt etmek için özniteliklere yönelik ön ek. Bu, alan adları için ön ek olacaktır. Varsayılan _ değeridir. XML okumak için boş olabilir, ancak yazmak için boş olamaz. okuma, yazma
valueTag Öznitelikleri veya alt öğeleri de olan öğelerdeki karakter verileri için kullanılan etiket. Kullanıcı, şemadaki alanı belirtebilir valueTag veya karakter verileri diğer öğelere veya özniteliklere sahip öğelerde mevcut olduğunda şema çıkarımı sırasında otomatik olarak eklenir. Varsayılan: _VALUE okuma,yazma
encoding Okuma için XML dosyalarını verilen kodlama türüne göre çözer. Yazmak için, kaydedilen XML dosyalarının kodlamasını (karakter kümesi) belirtir. XML yerleşik işlevleri bu seçeneği yoksayar. Varsayılan: UTF-8. okuma, yazma
ignoreSurroundingSpaces Okunan değerlerdeki çevresindeki boşlukların atlanıp atlanmayacağını tanımlar. Varsayılan: true. Yalnızca boşluk karakter verileri yoksayılır. okuma
rowValidationXSDPath Her satırın XML'sini ayrı ayrı doğrulamak için kullanılan isteğe bağlı bir XSD dosyasının yolu. Doğrulanemeyen satırlar yukarıdaki gibi ayrıştırma hataları olarak değerlendirilir. XSD, sağlanan veya çıkarılmış şemayı başka bir şekilde etkilemez. okuma
ignoreNamespace XML öğeleri ve özniteliklerindeki ad alanlarının ön ekleri yoksayılırsa true. Etiketler <abc:author> ve <def:author>, örneğin, her ikisi de yalnızca <author>olarak değerlendirilir. Ad alanları öğede rowTag yoksayılamaz, yalnızca okuma alt öğeleridir. XML ayrıştırma, olsa falsebile ad alanı tanımaz. Varsayılan: false. okuma
timestampFormat Tarih saat deseni biçimini izleyen özel zaman damgası biçim dizesi. Bu tür için timestamp geçerlidir. Varsayılan: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. okuma, yazma
timestampNTZFormat Tarih saat deseni biçimini izleyen saat dilimi olmayan zaman damgası için özel biçim dizesi. Bu, TimestampNTZType türü için geçerlidir. Varsayılan:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
okuma, yazma
dateFormat Tarih saat deseni biçimini izleyen özel tarih biçimi dizesi. Bu, tarih türü için geçerlidir. Varsayılan: yyyy-MM-dd. okuma, yazma
locale Yerel ayarı IETF BCP 47 biçiminde bir dil etiketi olarak ayarlar. Örneğin, locale tarihler ve zaman damgaları ayrıştırılırken kullanılır. Varsayılan: en-US. okuma
rootTag XML dosyalarının kök etiketi. Örneğin, içinde <books> <book><book>...</books>uygun değer şeklindedir books. gibi books foo="bar"bir değer belirterek temel öznitelikler ekleyebilirsiniz. Varsayılan: ROWS. yazma
declaration Her çıktı XML dosyasının başında, öncesinde yazacak XML bildiriminin rootTagiçeriği. Örneğin, bir değeri foo yazılması için nedenler <?xml foo?> . Gizlenecek boş bir dizeye ayarlayın. Varsayılan: version="1.0"
encoding="UTF-8" standalone="yes".
yazma
arrayElementName Yazarken dizi değerli bir sütunun her öğesini kapsayan XML öğesinin adı. Varsayılan: item. yazma
nullValue Null değerin dize gösterimini ayarlar. Varsayılan: dize null. Bu olduğunda null, ayrıştırıcı alanlar için öznitelikler ve öğeler yazmaz. okuma, yazma
compression Dosyaya kaydederken kullanılacak sıkıştırma kodu. Bu, bilinen büyük/küçük harfe duyarlı olmayan kısaltılmış adlardan biri olabilir (none, bzip2, gzip,lz4, snappy', and<br>deflate'). XML yerleşik işlevleri bu seçeneği yoksayar. Varsayılan: none. yazma
validateName True ise, XML öğesi adı doğrulama hatasında bir hata oluşturur. Örneğin, SQL alan adlarının boşlukları olabilir, ancak XML öğesi adları olamaz. Varsayılan:
true.
yazma
readerCaseSensitive rescuedDataColumn etkinleştirildiğinde büyük/küçük harf duyarlılığı davranışını belirtir. True ise, adları şemadan büyük/küçük harfe göre farklılık gösteren veri sütunlarını kurtarın; aksi takdirde, verileri büyük/küçük harfe duyarlı olmayan bir şekilde okuyun. Varsayılan: true. okuma
rescuedDataColumn Veri türü uyuşmazlığı ve şema uyuşmazlığı (sütun büyük/küçük harf dahil) nedeniyle ayrıştırılmayan tüm verilerin ayrı bir sütuna toplanıp toplanmayacağı. Bu sütun, Otomatik Yükleyici kullanılırken varsayılan olarak eklenir. Daha fazla ayrıntı için bkz . Kurtarılan veri sütunu nedir?. Varsayılan: Yok. okuma

PARQUET Seçenekler

Seçenek
datetimeRebaseMode

Tür: String

Julian ve Proleptik Gregoryen takvimler arasında TARİh ve ZAMAN DAMGASI değerlerinin yeniden boyutlandırmasını denetler. İzin verilen değerler: EXCEPTION, LEGACYve
CORRECTED.

Varsayılan değer: LEGACY
int96RebaseMode

Tür: String

Julian ve Proleptik Gregoryen takvimler arasında INT96 zaman damgası değerlerinin yeniden bağlanmasını denetler. İzin verilen değerler: EXCEPTION, LEGACYve
CORRECTED.

Varsayılan değer: LEGACY
mergeSchema

Tür: Boolean

Şemanın birden çok dosya arasında çıkarılıp çıkarılmayacağı ve her dosyanın şemasının birleştirilip birleştirmeyeceği.

Varsayılan değer: false
readerCaseSensitive

Tür: Boolean

Etkinleştirildiğinde rescuedDataColumn büyük/küçük harf duyarlılığı davranışını belirtir. True ise, adları şemadan büyük/küçük harfe göre farklılık gösteren veri sütunlarını kurtarın; aksi takdirde, verileri büyük/küçük harfe duyarlı olmayan bir şekilde okuyun.

Varsayılan değer: true
rescuedDataColumn

Tür: String

Veri türü uyuşmazlığı ve şema uyuşmazlığı (sütun büyük/küçük harf dahil) nedeniyle ayrıştırılmayan tüm verilerin ayrı bir sütuna toplanıp toplanmayacağı. Bu sütun, Otomatik Yükleyici kullanılırken varsayılan olarak eklenir. Daha fazla ayrıntı için kurtarılan veri sütunu nedir? konusuna bakın.

Varsayılan değer: Yok

AVRO Seçenekler

Seçenek
avroSchema

Tür: String

Kullanıcı tarafından Avro biçiminde sağlanan isteğe bağlı şema. Avro okunurken bu seçenek, gerçek Avro şemasıyla uyumlu ancak farklı olan gelişmiş bir şemaya ayarlanabilir. Seri durumdan çıkarma şeması, geliştirilen şemayla tutarlı olacaktır. Örneğin, varsayılan değere sahip bir ek sütun içeren gelişmiş bir şema ayarlarsanız, okuma sonucu yeni sütunu da içerir.

Varsayılan değer: Yok
datetimeRebaseMode

Tür: String

Julian ve Proleptik Gregoryen takvimler arasında TARİh ve ZAMAN DAMGASI değerlerinin yeniden boyutlandırmasını denetler. İzin verilen değerler: EXCEPTION, LEGACYve
CORRECTED.

Varsayılan değer: LEGACY
mergeSchema

Tür: Boolean

Şemanın birden çok dosya arasında çıkarılıp çıkarılmayacağı ve her dosyanın şemasının birleştirilip birleştirmeyeceği.
mergeSchema avro için veri türlerini gevşetmiyor.

Varsayılan değer: false
readerCaseSensitive

Tür: Boolean

Etkinleştirildiğinde rescuedDataColumn büyük/küçük harf duyarlılığı davranışını belirtir. True ise, adları şemadan büyük/küçük harfe göre farklılık gösteren veri sütunlarını kurtarın; aksi takdirde, verileri büyük/küçük harfe duyarlı olmayan bir şekilde okuyun.

Varsayılan değer: true
rescuedDataColumn

Tür: String

Veri türü uyuşmazlığı ve şema uyuşmazlığı (sütun büyük/küçük harf dahil) nedeniyle ayrıştırılmayan tüm verilerin ayrı bir sütuna toplanıp toplanmayacağı. Bu sütun, Otomatik Yükleyici kullanılırken varsayılan olarak eklenir. Daha fazla ayrıntı için kurtarılan veri sütunu nedir? konusuna bakın.

Varsayılan değer: Yok

BINARYFILE Seçenekler

İkili dosyalar ek yapılandırma seçeneklerine sahip değildir.

TEXT Seçenekler

Seçenek
encoding

Tür: String

METNEÇEVİr dosyalarının kodlama adı. Seçeneklerin listesi için bkz java.nio.charset.Charset .

Varsayılan değer: UTF-8
lineSep

Tür: String

Ardışık iki METNEÇEVİr kaydı arasındaki dize.

Varsayılan değer: Yok, ve'yi \r\n kapsar \r\n
wholeText

Tür: Boolean

Bir dosyanın tek bir kayıt olarak okunup okunmayacağı.

Varsayılan değer: false

ORC Seçenekler

Seçenek
mergeSchema

Tür: Boolean

Şemanın birden çok dosya arasında çıkarılıp çıkarılmayacağı ve her dosyanın şemasının birleştirilip birleştirmeyeceği.

Varsayılan değer: false