option (DataFrameWriter)

Agrega una opción de salida para el origen de datos subyacente. Para obtener algunas opciones disponibles, consulte Opciones.

Sintaxis

option(key, value)

Parámetros

Parámetro Tipo Descripción
key str Tecla de opción.
value str, int, float o bool Valor de opción.

Options

En la tabla siguiente se incluyen algunas opciones de escritura:

Key Formatos Descripción
arrayElementName XML Nombre del elemento de los elementos de matriz que no tienen ningún nombre explícito. Predeterminado: item. Se aplica a xml (DataFrameWriter).
attributePrefix XML Prefijo antepuesto a nombres de campo que corresponden a atributos XML. Predeterminado: _. Se aplica a xml (DataFrameWriter).
avroSchema Avro Esquema avro completo como una cadena JSON. Use esta opción para convertir tipos de Spark SQL a tipos específicos de Avro. Se aplica al archivo Avro.
charToEscapeQuoteEscaping CSV Carácter usado para escapar el carácter de escape cuando difiere del carácter de comillas. Valor predeterminado: \0 (no habilitado). Se aplica a csv (DataFrameWriter).
clusterByAuto Delta Lake Si se habilita la agrupación en clústeres líquidos automáticas, donde Azure Databricks selecciona columnas de agrupación en clústeres en función de los patrones de consulta. Solo es válido con mode("overwrite"). No se puede usar con append el modo . Predeterminado: false. Disponible en Databricks Runtime 16.4 y versiones posteriores. Se aplica al uso de clústeres líquidos para tablas.
compression CSV, JSON, ORC, Parquet, Text, XML Códec de compresión que se va a usar al escribir. Los valores válidos varían según el formato. Se aplica a csv (DataFrameWriter),json (DataFrameWriter), orc (DataFrameWriter), parquet (DataFrameWriter), text (DataFrameWriter), xml (DataFrameWriter)).
dateFormat CSV, JSON, XML Cadena de formato para los valores de columna de fecha. Predeterminado: yyyy-MM-dd. Se aplica a csv (DataFrameWriter),json (DataFrameWriter), xml (DataFrameWriter).
declaration XML Cadena de declaración XML escrita en la parte superior de cada archivo de salida. Establezca en una cadena vacía para suprimir la declaración. Predeterminado: version="1.0" encoding="UTF-8" standalone="yes". Se aplica a xml (DataFrameWriter).
emptyValue CSV Cadena escrita para valores vacíos (no NULL). Predeterminado: "". Se aplica a csv (DataFrameWriter).
encoding CSV, JSON, XML Codificación de caracteres para los archivos de salida. Predeterminado: UTF-8. Se aplica a csv (DataFrameWriter),json (DataFrameWriter), xml (DataFrameWriter).
escape CSV Carácter usado para escapar valores entre comillas. Predeterminado: \. Se aplica a csv (DataFrameWriter).
escapeQuotes CSV Indica si se deben escapar los caracteres de comillas dentro de los valores de campo entre comillas. Predeterminado: true. Se aplica a csv (DataFrameWriter).
header CSV Si se van a escribir nombres de columna como primera línea de la salida. Predeterminado: false. Se aplica a csv (DataFrameWriter).
ignoreLeadingWhiteSpace CSV Si se va a recortar el espacio en blanco inicial de los valores al escribir. Predeterminado: false. Se aplica a csv (DataFrameWriter).
ignoreNullFields JSON Si se van a omitir campos con valores NULL de la salida JSON. Valor predeterminado: valor de spark.sql.jsonGenerator.ignoreNullFields. Se aplica a json (DataFrameWriter).
ignoreTrailingWhiteSpace CSV Si se va a recortar el espacio en blanco final de los valores al escribir. Predeterminado: false. Se aplica a csv (DataFrameWriter).
lineSep CSV, JSON, Text Cadena separadora de línea usada entre registros. Predeterminado: \n. Se aplica a csv (DataFrameWriter),json (DataFrameWriter), text (DataFrameWriter).
mergeSchema Delta Lake Si se va a habilitar la evolución del esquema para la operación de escritura. Las nuevas columnas del dataframe de origen se agregan al esquema de la tabla de destino. Se aplica a los anexos por lotes y streaming. Se aplica al esquema de la tabla de actualización.
nullValue CSV Cadena escrita para valores NULL. Predeterminado: "". Se aplica a csv (DataFrameWriter).
nullValue XML Cadena escrita para valores NULL. Predeterminado: null. Cuando se establece en null, se omiten atributos y elementos secundarios para campos NULL. Se aplica a xml (DataFrameWriter).
overwriteSchema Delta Lake Si se va a reemplazar el esquema de tabla y la creación de particiones al sobrescribir. Requiere mode("overwrite") sin replaceWhere. No se puede usar con partitionOverwriteMode. Se aplica al esquema de la tabla de actualización.
partitionOverwriteMode Delta Lake Modo de sobrescritura de partición. Establézcalo dynamic en para sobrescribir solo las particiones que contienen nuevos datos, dejando sin cambios todas las demás particiones. Modo heredado; no se admite en el proceso sin servidor ni en Databricks SQL. Se aplica a la sobrescritura selectiva de datos con Delta Lake.
quote CSV Carácter utilizado para comillas de valores de campo que contienen el separador. Predeterminado: ". Se aplica a csv (DataFrameWriter).
quoteAll CSV Si se deben incluir todos los valores de campo entre comillas, independientemente del contenido. Predeterminado: false. Se aplica a csv (DataFrameWriter).
recordName Avro Nombre de registro de nivel superior en el esquema avro de salida. Predeterminado: topLevelRecord. Se aplica al archivo Avro.
recordNamespace Avro Espacio de nombres para el registro de nivel superior en el esquema avro de salida. Predeterminado: "". Se aplica al archivo Avro.
replaceWhere Delta Lake Expresión de predicado. Sobrescribe de forma atómica solo los registros que coinciden con el predicado. Se aplica a la sobrescritura selectiva de datos con Delta Lake.
rootTag XML Etiqueta de elemento raíz que ajusta todos los elementos de fila de la salida. Predeterminado: ROWS. Se aplica a xml (DataFrameWriter).
rowTag XML Etiqueta de elemento que representa una fila en la salida. Predeterminado: ROW. Se aplica a xml (DataFrameWriter).
sep CSV Carácter delimitador de campo. Predeterminado: ,. Se aplica a csv (DataFrameWriter).
timestampFormat CSV, JSON, XML Cadena de formato para los valores de columna de marca de tiempo. Predeterminado: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. Se aplica a csv (DataFrameWriter),json (DataFrameWriter), xml (DataFrameWriter).
txnAppId Delta Lake Cadena única que identifica la aplicación para escrituras idempotentes en foreachBatch operaciones. Use junto con txnVersion para garantizar escrituras exactamente una vez en varias tablas de Delta Lake. Se aplica a Uso foreachBatch para escrituras de tabla idempotentes.
txnVersion Delta Lake Número que aumenta de forma monotónica que se usa como versión de transacción para escrituras idempotentes en foreachBatch operaciones. Use junto con txnAppId para garantizar escrituras exactamente una vez en varias tablas de Delta Lake. Se aplica a Uso foreachBatch para escrituras de tabla idempotentes.
userMetadata Delta Lake, Apache Iceberg Cadena definida por el usuario anexada a los metadatos de confirmación de la operación de escritura. Visible en la salida de DESCRIBE HISTORY. Se aplica a Las tablas enriquecidas con metadatos personalizados.
validateName XML Si se produce una excepción si un nombre de columna no es un identificador de elemento XML válido. Predeterminado: true. Se aplica a xml (DataFrameWriter).
valueTag XML Nombre de campo usado para los datos de caracteres en elementos XML que también tienen atributos o elementos secundarios. Predeterminado: _VALUE. Se aplica a xml (DataFrameWriter).

Devoluciones

DataFrameWriter

Ejemplos

Escriba un DataFrame en un archivo CSV con el conjunto de nullValue opciones.

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|
    # +---+------------+