opsi (DataFrameWriter)

Menambahkan opsi output untuk sumber data yang mendasar. Untuk beberapa opsi yang tersedia, lihat Opsi.

Sintaksis

option(key, value)

Parameter-parameternya

Parameter Tipe Deskripsi
key str Kunci opsi.
value str, int, float, atau bool Nilai opsi.

Opsi

Tabel berikut berisi beberapa opsi penulis:

Kunci Format Deskripsi
arrayElementName XML Nama elemen untuk elemen array yang tidak memiliki nama eksplisit. Standar: item. Berlaku untuk xml (DataFrameWriter).
attributePrefix XML Awalan diawali ke nama bidang yang sesuai dengan atribut XML. Standar: _. Berlaku untuk xml (DataFrameWriter).
avroSchema Avro Skema Avro lengkap sebagai string JSON. Gunakan opsi ini untuk mengonversi jenis Spark SQL ke jenis Avro tertentu. Berlaku untuk file Avro.
charToEscapeQuoteEscaping CSV Karakter yang digunakan untuk menghindari karakter escape ketika berbeda dari karakter kutipan. Default: \0 (tidak diaktifkan). Berlaku untuk csv (DataFrameWriter).
clusterByAuto Danau Delta Apakah akan mengaktifkan pengklusteran cairan otomatis, di mana Azure Databricks memilih kolom pengklusteran berdasarkan pola kueri. Hanya valid dengan mode("overwrite"). Tidak dapat digunakan dengan append mode. Standar: false. Tersedia di Databricks Runtime 16.4 ke atas. Berlaku untuk Menggunakan pengklusteran cair untuk tabel.
compression CSV, JSON, ORC, Parquet, Text, XML Codec kompresi yang digunakan saat menulis. Nilai yang valid bervariasi menurut format. Berlaku untuk csv (DataFrameWriter), json (DataFrameWriter), orc (DataFrameWriter), parquet (DataFrameWriter), text (DataFrameWriter), xml (DataFrameWriter).
dateFormat CSV, JSON, XML Format string untuk nilai kolom tanggal. Standar: yyyy-MM-dd. Berlaku untuk csv (DataFrameWriter), json (DataFrameWriter), xml (DataFrameWriter).
declaration XML String deklarasi XML yang ditulis di bagian atas setiap file output. Atur ke string kosong untuk menekan deklarasi. Standar: version="1.0" encoding="UTF-8" standalone="yes". Berlaku untuk xml (DataFrameWriter).
emptyValue CSV String yang ditulis untuk nilai kosong (non-null). Standar: "". Berlaku untuk csv (DataFrameWriter).
encoding CSV, JSON, XML Pengodean karakter untuk file output. Standar: UTF-8. Berlaku untuk csv (DataFrameWriter), json (DataFrameWriter), xml (DataFrameWriter).
escape CSV Karakter yang digunakan untuk menghindari nilai yang dikutip. Standar: \. Berlaku untuk csv (DataFrameWriter).
escapeQuotes CSV Apakah akan lolos dari karakter kutipan di dalam nilai bidang yang dikutip. Standar: true. Berlaku untuk csv (DataFrameWriter).
header CSV Apakah akan menulis nama kolom sebagai baris pertama output. Standar: false. Berlaku untuk csv (DataFrameWriter).
ignoreLeadingWhiteSpace CSV Apakah akan memangkas spasi kosong di depan dari nilai saat menulis. Standar: false. Berlaku untuk csv (DataFrameWriter).
ignoreNullFields JSON Apakah akan menghilangkan bidang dengan nilai null dari output JSON. Default: nilai spark.sql.jsonGenerator.ignoreNullFields. Berlaku untuk json (DataFrameWriter).
ignoreTrailingWhiteSpace CSV Apakah akan memangkas spasi kosong berikutnya dari nilai saat menulis. Standar: false. Berlaku untuk csv (DataFrameWriter).
lineSep CSV, JSON, Teks String pemisah baris yang digunakan di antara rekaman. Standar: \n. Berlaku untuk csv (DataFrameWriter), json (DataFrameWriter), teks (DataFrameWriter).
mergeSchema Danau Delta Apakah akan mengaktifkan evolusi skema untuk operasi tulis. Kolom baru di DataFrame sumber ditambahkan ke skema tabel target. Berlaku untuk penambah batch dan streaming. Berlaku untuk Memperbarui skema tabel.
nullValue CSV String ditulis untuk nilai null. Standar: "". Berlaku untuk csv (DataFrameWriter).
nullValue XML String yang ditulis untuk nilai null. Standar: null. Ketika diatur ke null, atribut dan elemen turunan untuk bidang null dihilangkan. Berlaku untuk xml (DataFrameWriter).
overwriteSchema Danau Delta Apakah akan mengganti skema tabel dan pemartisian saat menimpa. mode("overwrite") Membutuhkan tanpa replaceWhere. Tidak dapat digunakan dengan partitionOverwriteMode. Berlaku untuk Memperbarui skema tabel.
partitionOverwriteMode Danau Delta Mode timpa partisi. Atur ini ke dynamic untuk menimpa hanya partisi yang berisi data baru, membiarkan semua partisi lain tidak berubah. Mode warisan; tidak didukung pada komputasi tanpa server atau Databricks SQL. Berlaku untuk Menimpa data secara selektif dengan Delta Lake.
quote CSV Karakter yang digunakan untuk mengutip nilai bidang yang berisi pemisah. Standar: ". Berlaku untuk csv (DataFrameWriter).
quoteAll CSV Apakah akan mengapit semua nilai bidang dalam tanda kutip terlepas dari kontennya. Standar: false. Berlaku untuk csv (DataFrameWriter).
recordName Avro Nama rekaman tingkat atas dalam skema Avro output. Standar: topLevelRecord. Berlaku untuk file Avro.
recordNamespace Avro Namespace untuk rekaman tingkat atas dalam skema Avro output. Standar: "". Berlaku untuk file Avro.
replaceWhere Danau Delta Ekspresi predikat. Secara atomik hanya menimpa rekaman yang cocok dengan predikat. Berlaku untuk Menimpa data secara selektif dengan Delta Lake.
rootTag XML Tag elemen akar yang membungkus semua elemen baris dalam output. Standar: ROWS. Berlaku untuk xml (DataFrameWriter).
rowTag XML Tag elemen yang mewakili baris dalam output. Standar: ROW. Berlaku untuk xml (DataFrameWriter).
sep CSV Karakter pemisah bidang. Standar: ,. Berlaku untuk csv (DataFrameWriter).
timestampFormat CSV, JSON, XML String format untuk nilai kolom tanda waktu. Standar: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. Berlaku untuk csv (DataFrameWriter), json (DataFrameWriter), xml (DataFrameWriter).
txnAppId Danau Delta String unik yang mengidentifikasi aplikasi untuk penulisan idempogen dalam foreachBatch operasi. Gunakan bersama-sama untuk txnVersion memastikan penulisan tepat sekali ke beberapa tabel Delta Lake. Berlaku untuk Gunakan foreachBatch untuk penulisan tabel idempotensi.
txnVersion Danau Delta Angka yang meningkat secara monoton yang digunakan sebagai versi transaksi untuk penulisan idempogen dalam foreachBatch operasi. Gunakan bersama-sama untuk txnAppId memastikan penulisan tepat sekali ke beberapa tabel Delta Lake. Berlaku untuk Gunakan foreachBatch untuk penulisan tabel idempotensi.
userMetadata Delta Lake, Apache Iceberg String yang ditentukan pengguna ditambahkan ke metadata penerapan untuk operasi tulis. Terlihat dalam output .DESCRIBE HISTORY Berlaku untuk Memperkaya tabel dengan metadata kustom.
validateName XML Apakah akan melemparkan pengecualian jika nama kolom bukan pengidentifikasi elemen XML yang valid. Standar: true. Berlaku untuk xml (DataFrameWriter).
valueTag XML Nama bidang yang digunakan untuk data karakter dalam elemen XML yang juga memiliki atribut atau elemen turunan. Standar: _VALUE. Berlaku untuk xml (DataFrameWriter).

Pengembalian Barang

DataFrameWriter

Examples

Tulis DataFrame ke dalam file CSV dengan nullValue set opsi.

import tempfile
with tempfile.TemporaryDirectory(prefix="option") as d:
    df = spark.createDataFrame([(100, None)], "age INT, name STRING")
    df.write.option("nullValue", "Alice").mode("overwrite").format("csv").save(d)

    spark.read.schema(df.schema).format('csv').load(d).show()
    # +---+------------+
    # |age|        name|
    # +---+------------+
    # |100|Alice|
    # +---+------------+