Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las opciones de configuración específicas del origen cloudFiles
tienen el prefijo cloudFiles
, de forma que se encuentran en un espacio de nombres independiente de otras opciones de origen de streaming estructurado.
- Opciones comunes del cargador automático
- Opciones de lista de directorios
- Opciones de notificación de archivos
- Opciones de formato de archivo
- Opciones específicas de la nube
Opciones comunes de Auto Loader
Puede configurar las siguientes opciones para flujos de Auto Loader.
Opciones |
---|
cloudFiles.allowOverwrites Tipo: Boolean Indica si se permiten cambios en el archivo de directorio de entrada para sobrescribir los datos existentes. Para ver advertencias de configuración, consulte ¿Procesa el cargador automático el archivo de nuevo cuando el archivo se anexa o sobrescribe?. Opción predeterminada: false |
cloudFiles.backfillInterval Tipo: Interval String El cargador automático puede desencadenar reposición asincrónica en un intervalo determinado. Por ejemplo 1 day , para rellenar diariamente o 1 week para rellenar semanalmente. Para obtener más información, consulte Activar reposiciones regulares usando cloudFiles.backfillInterval.No use cuando cloudFiles.useManagedFileEvents se establece en true .Valor predeterminado: Ninguno |
cloudFiles.cleanSource Tipo: String Si desea eliminar automáticamente los archivos procesados del directorio de entrada. Cuando se establece en OFF (valor predeterminado), no se elimina ningún archivo.Cuando se establece en DELETE , Auto Loader elimina automáticamente los archivos 30 días después de procesarlos. Para ello, El cargador automático debe tener permisos de escritura en el directorio de origen.Cuando se establece en MOVE , Auto Loader mueve automáticamente los archivos a la ubicación especificada en cloudFiles.cleanSource.moveDestination 30 días después de procesarlos. Para ello, el Cargador Automático debe tener permisos de escritura en el directorio de origen, así como en la ubicación del movimiento.Un archivo se considera procesado cuando tiene un valor distinto de NULL para commit_time en el resultado de la cloud_files_state función con valores de tabla. Consulte cloud_files_state función con valores de tabla. La espera adicional de 30 días después del procesamiento se puede configurar mediante cloudFiles.cleanSource.retentionDuration .Nota: Databricks no recomienda usar esta opción si hay varios flujos que consumen datos de la ubicación de origen porque el consumidor más rápido eliminará los archivos y no se ingerirá en los orígenes más lentos. Nota: La habilitación de esta característica requiere que Auto Loader mantenga el estado adicional en su punto de control, lo que incurre en sobrecarga de rendimiento, pero permite una observabilidad mejorada a través de la cloud_files_state función con valores de tabla. Consulte cloud_files_state función con valores de tabla.Nota: cleanSource utiliza la configuración actual para decidir entre MOVE o DELETE un archivo determinado. Por ejemplo, supongamos que la configuración era MOVE cuando el archivo se procesó originalmente, pero se cambió a DELETE cuando el archivo se convirtió en candidato para la limpieza de 30 días después. En este caso, cleanSource eliminará el archivo.Disponible en Databricks Runtime 16.4 y versiones posteriores. Valor predeterminado: OFF |
cloudFiles.cleanSource.retentionDuration Tipo: Interval String Tiempo de espera antes de que los archivos procesados se conviertan en candidatos para ser archivados con cleanSource . Debe ser mayor que 7 días para DELETE . No hay ninguna restricción mínima para MOVE .Disponible en Databricks Runtime 16.4 y versiones posteriores. Valor predeterminado: 30 días |
cloudFiles.cleanSource.moveDestination Tipo: String Ruta de acceso para archivar los archivos procesados cuando cloudFiles.cleanSource se establece en MOVE .La ubicación de traslado está restringida de las siguientes maneras:
Auto Loader debe tener permisos de escritura en este directorio. Disponible en Databricks Runtime 16.4 y versiones posteriores. Valor predeterminado: ninguno |
cloudFiles.format Tipo: String El formato del archivo de datos en la ruta de acceso de origen. Los valores permitidos son:
Valor predeterminado: Ninguno (opción obligatoria) |
cloudFiles.includeExistingFiles Tipo: Boolean Indica si se incluyen los archivos existentes en la ruta de acceso de entrada del procesamiento de flujos o si solo se procesan los nuevos archivos que llegan después de la configuración inicial. Esta opción solo se evalúa cuando se inicia una secuencia por primera vez. Cambiar esta opción después de reiniciar la secuencia no tiene ningún efecto. Opción predeterminada: true |
cloudFiles.inferColumnTypes Tipo: Boolean Determinar si se deben inferir los tipos de columnas exactos al aprovechar la inferencia de esquema. De manera predeterminada, las columnas se infieren como cadenas al inferir conjuntos de datos JSON y CSV. Consulte la inferencia de esquemas para obtener más detalles. Opción predeterminada: false |
cloudFiles.maxBytesPerTrigger Tipo: Byte String Número máximo de bytes nuevos que se procesarán en cada desencadenador. Puede especificar una cadena de bytes como 10g para limitar cada microlote a 10 GB de datos. Se trata de un límite suave. Si tiene archivos de 3 GB cada uno, Azure Databricks procesa 12 GB en un microlote. Cuando se usa junto con cloudFiles.maxFilesPerTrigger , Azure Databricks consume hasta el límite inferior de cloudFiles.maxFilesPerTrigger o cloudFiles.maxBytesPerTrigger , lo que se alcance primero. Esta opción no tiene ningún efecto cuando se usa con Trigger.Once() (Trigger.Once() está en desuso).Valor predeterminado: Ninguno |
cloudFiles.maxFileAge Tipo: Interval String Cuánto dura el seguimiento de un evento de archivo con fines de desduplicación. Databricks no recomienda ajustar este parámetro a menos que ingiera datos en el orden de millones de archivos por hora. Consulte la sección seguimiento de eventos de archivo para obtener más detalles. Un ajuste demasiado agresivo de cloudFiles.maxFileAge puede causar problemas en la calidad de los datos, como la ingesta duplicada o la falta de archivos. Por lo tanto, Databricks recomienda una configuración prudente para cloudFiles.maxFileAge , como 90 días, que es similar a lo que recomiendan soluciones comparables de ingesta de datos.Valor predeterminado: Ninguno |
cloudFiles.maxFilesPerTrigger Tipo: Integer Número máximo de archivos nuevos que se procesarán en cada desencadenador. Cuando se usa junto con cloudFiles.maxBytesPerTrigger , Azure Databricks consume hasta el límite inferior de cloudFiles.maxFilesPerTrigger o cloudFiles.maxBytesPerTrigger , lo que se alcance primero. Esta opción no tiene ningún efecto cuando se usa con Trigger.Once() (en desuso).Valor predeterminado: 1000 |
cloudFiles.partitionColumns Tipo: String Lista separada por comas de columnas de partición de estilo Hive que le gustaría inferir de la estructura de directorios de los archivos. Las columnas de partición de estilo Hive son pares clave-valor combinados por un signo igual, como <base-path>/a=x/b=1/c=y/file.format . En este ejemplo, las columnas de partición son a , b y c . De manera predeterminada, estas columnas se agregan automáticamente al esquema si usa la inferencia de esquema y proporciona la <base-path> desde la que cargar los datos. Si proporciona un esquema, el cargador automático espera que estas columnas se incluyan en el esquema. Si no quiere que estas columnas formen parte del esquema, puede especificar "" para ignorarlas. Además, puede usar esta opción cuando desee que las columnas se infieran de la ruta de acceso del archivo en estructuras de directorio complejas, como en el ejemplo siguiente:<base-path>/year=2022/week=1/file1.csv <base-path>/year=2022/month=2/day=3/file2.csv <base-path>/year=2022/month=2/day=4/file3.csv Especificar cloudFiles.partitionColumns como year,month,day devuelve year=2022 para file1.csv , pero las month columnas y day son null .month y day se analizan correctamente para file2.csv y file3.csv .Valor predeterminado: Ninguno |
cloudFiles.schemaEvolutionMode Tipo: String El modo de hacer evolucionar el esquema a medida que se detectan nuevas columnas en los datos. De manera predeterminada, las columnas se infieren como cadenas al inferir conjuntos de datos JSON. Consulte evolución del esquema para obtener más detalles. Valor predeterminado: addNewColumns cuando no se proporciona un esquema; de lo contrario, none |
cloudFiles.schemaHints Tipo: String Información de esquema que se proporciona al cargador automático durante la inferencia del esquema. Consulte sugerencias de esquema para obtener más detalles. Valor predeterminado: Ninguno |
cloudFiles.schemaLocation Tipo: String Ubicación en la que se almacenará el esquema deducido y los cambios posteriores. Consulte la inferencia de esquemas para obtener más detalles. Valor predeterminado: Ninguno (necesario para deducir el esquema) |
cloudFiles.useStrictGlobber Tipo: Boolean Si se usa un patrón global estricto que coincida con el comportamiento global predeterminado de otros orígenes de archivos en Apache Spark. Consulte Patrones comunes de carga de datos para obtener más detalles. Disponible en Databricks Runtime 12.2 LTS y versiones posteriores. Opción predeterminada: false |
cloudFiles.validateOptions Tipo: Boolean Indica si se validan las opciones de Auto Loader y se devuelve un error para opciones desconocidas o incoherentes. Opción predeterminada: true |
Opciones de listado de directorios
Las siguientes opciones son relevantes para el modo de lista de directorios.
Opciones |
---|
cloudFiles.useIncrementalListing (en desuso)Tipo: String Esta característica ha quedado en desuso. Databricks recomienda usar el modo de notificación de archivos con eventos de archivo en lugar de cloudFiles.useIncrementalListing .Indica si se debe usar la lista incremental en lugar de la lista completa en el modo de lista de directorios. De forma predeterminada, Auto Loader hace todo lo posible para detectar automáticamente si un directorio determinado es aplicable para el listado incremental. Puede usar explícitamente la lista incremental o usar la lista de directorios completa si las establece como true o false respectivamente.Habilitar incorrectamente la lista incremental en un directorio ordenado no léxico impide que Auto Loader detecte nuevos archivos. Funciona con Azure Data Lake Storage ( abfss:// ), S3 (s3:// ) y GCS (gs:// ).Disponible en Databricks Runtime 9.1 LTS y versiones posteriores. Valor predeterminado: auto en Databricks Runtime 16.4 LTS y versiones posteriores, false en Databricks Runtime 17.0 y versiones posterioresValores disponibles: auto , true , false |
Opciones de notificación de archivos
Las siguientes opciones son relevantes para el modo de notificación de archivos.
Opciones |
---|
cloudFiles.fetchParallelism Tipo: Integer Número de subprocesos que se usan al capturar mensajes del servicio de cola. No use cuando cloudFiles.useManagedFileEvents se establece en true .Valor predeterminado: 1 |
cloudFiles.pathRewrites Tipo: cadena JSON Solo es necesario si especifica un queueUrl que recibe notificaciones de archivos de varios cubos S3 y desea aprovechar los puntos de montaje configurados para acceder a los datos de estos contenedores. Use esta opción para reescribir el prefijo de la ruta de acceso bucket/key con el punto de montaje. Solo se pueden reescribir prefijos. Por ejemplo, para la configuración {"<databricks-mounted-bucket>/path": "dbfs:/mnt/data-warehouse"} , la ruta s3://<databricks-mounted-bucket>/path/2017/08/fileA.json se vuelve a modificar a dbfs:/mnt/data-warehouse/2017/08/fileA.json .No use cuando cloudFiles.useManagedFileEvents se establece en true .Valor predeterminado: Ninguno |
cloudFiles.resourceTag Tipo: Map(String, String) Una serie de pares de etiquetas clave-valor para ayudar a asociar e identificar recursos relacionados, por ejemplo: cloudFiles.option("cloudFiles.resourceTag.myFirstKey", "myFirstValue") .option("cloudFiles.resourceTag.mySecondKey", "mySecondValue") Para obtener más información sobre AWS, consulte Etiquetas de asignación de costos de Amazon SQS y Configuración de etiquetas para un tema de Amazon SNS. (1) Para obtener más información sobre Azure, consulte Asignar nombres a colas y metadatos y la cobertura de properties.labels en Suscripciones a eventos. El cargador automático almacena estos pares de etiquetas clave-valor en JSON como etiquetas.
(1)Para obtener más información sobre GCP, consulte Uso de informes con etiquetas. (1) No use cuando cloudFiles.useManagedFileEvents se establece en true . En su lugar, establezca etiquetas de recursos mediante la consola del proveedor de nube.Valor predeterminado: Ninguno |
cloudFiles.useManagedFileEvents Versión preliminar: la compatibilidad del cargador automático con eventos de archivo está en versión preliminar pública. Solo está disponible en Databricks Runtime 14.3 LTS y versiones posteriores. Para inscribirse en la versión preliminar, póngase en contacto con el equipo de la cuenta de Azure Databricks. Cuando se establece en true , Auto Loader usa el servicio de eventos de archivo para detectar archivos en la ubicación externa. Puede usar esta opción solo si la ruta de acceso de carga está en una ubicación externa donde los eventos de archivo estén habilitados. Consulte Uso del modo de notificación de archivos con eventos de archivo.Los eventos de archivo proporcionan un rendimiento de nivel de notificaciones en la detección de archivos, ya que Auto Loader puede detectar nuevos archivos desde la última ejecución. A diferencia de la lista de directorios, este proceso no necesita enumerar todos los archivos del directorio. Hay algunas situaciones en las que Auto Loader usa la lista de directorios aunque la opción de eventos de archivo esté habilitada:
|
cloudFiles.useNotifications Tipo: Boolean Indica si se debe usar el modo de notificación de archivos para determinar cuándo hay nuevos archivos. Si es false , use el modo de lista de directorios. Consulte Comparación de los modos de detección de archivos del cargador automático.No use cuando cloudFiles.useManagedFileEvents se establece en true .Opción predeterminada: false |
(1) El cargador automático agrega de forma predeterminada y en la medida de lo posible los siguientes pares de etiquetas clave-valor:
-
vendor
:Databricks
-
path
: ubicación desde la que se cargan los datos. No disponible en GCP debido a las limitaciones de etiquetado. -
checkpointLocation
: la ubicación del punto de control de la secuencia. No disponible en GCP debido a las limitaciones de etiquetado. -
streamId
: identificador único global de la secuencia.
Estos nombres de clave están reservados y no se pueden sobrescribir sus valores.
Opciones de formato de archivo
Con Auto Loader puede ingerir archivos JSON
, CSV
, PARQUET
, AVRO
, TEXT
, BINARYFILE
y ORC
.
- Opciones genéricas
-
JSON
Opciones -
CSV
Opciones -
XML
Opciones -
PARQUET
Opciones -
AVRO
Opciones -
BINARYFILE
Opciones -
TEXT
Opciones -
ORC
Opciones
Opciones genéricas
Las siguientes opciones se aplican a todos los formatos de archivo.
Opción |
---|
ignoreCorruptFiles Tipo: Boolean Si se deben omitir los archivos dañados. Si el valor es true, los trabajos de Spark seguirán ejecutándose cuando haya archivos dañados y se devolverá el contenido leído. Observable como numSkippedCorruptFiles en la columnaoperationMetrics del historial de Delta Lake. Disponible en Databricks Runtime 11.3 LTS y versiones posteriores.Valor predeterminado: false |
ignoreMissingFiles Tipo: Boolean Si se deben omitir los archivos que faltan. Si el valor es true, los trabajos de Spark seguirán ejecutándose cuando falten archivos y se devolverá el contenido leído. Disponible en Databricks Runtime 11.3 LTS y versiones posteriores. Valor predeterminado: false para Auto Loader, true para COPY INTO (heredado) |
modifiedAfter Tipo: Timestamp String , por ejemplo, 2021-01-01 00:00:00.000000 UTC+0 .Se puede usar una marca de tiempo opcional como filtro para ingerir solo aquellos archivos que tengan una marca de tiempo de modificación posterior a la que se ha proporcionado. Valor predeterminado: ninguno |
modifiedBefore Tipo: Timestamp String , por ejemplo, 2021-01-01 00:00:00.000000 UTC+0 .Marca de tiempo opcional como filtro para ingerir solo archivos que tengan una marca de tiempo de modificación antes de la marca de tiempo proporcionada. Valor predeterminado: ninguno |
pathGlobFilter o fileNamePattern Tipo: String Un posible patrón global que proporcionar para elegir archivos. Equivalente a PATTERN en COPY INTO (heredado).
fileNamePattern se puede usar en read_files .Valor predeterminado: ninguno |
recursiveFileLookup Tipo: Boolean Esta opción busca en directorios anidados incluso si sus nombres no siguen un esquema de nomenclatura de particiones como date=2019-07-01. Valor predeterminado: false |
JSON
opciones
Opción |
---|
allowBackslashEscapingAnyCharacter Tipo: Boolean Si se permite que las barras diagonales invertidas sean caracteres de escape para cualquier carácter posterior. Si no está habilitado, solo se pueden escapar los caracteres que se enumeran explícitamente mediante la especificación JSON. Valor predeterminado: false |
allowComments Tipo: Boolean Si se permite el uso de comentarios de estilo en Java, C y C++ (variedades '/' , '*' y '//' ) dentro del contenido analizado o no.Valor predeterminado: false |
allowNonNumericNumbers Tipo: Boolean Si se permite el conjunto de tokens que no son cifras ( NaN ) como valores de número flotante válidos.Valor predeterminado: true |
allowNumericLeadingZeros Tipo: Boolean Si se permite que los números enteros comiencen con ceros adicionales (que se pueden omitir) (por ejemplo, 000001 ).Valor predeterminado: false |
allowSingleQuotes Tipo: Boolean Si se permite el uso de comillas simples (apóstrofo, carácter '\' ) para citar cadenas (nombres y valores de cadena).Valor predeterminado: true |
allowUnquotedControlChars Tipo: Boolean Si se permite que las cadenas JSON contengan caracteres de control sin escape (caracteres ASCII con un valor inferior a 32, incluidos los de tabulación y avance de línea) o no. Valor predeterminado: false |
allowUnquotedFieldNames Tipo: Boolean Si se permite el uso de nombres de campo sin comillas (permitidos en JavaScript, pero no en la especificación JSON). Valor predeterminado: false |
badRecordsPath Tipo: String La ruta para almacenar archivos destinados a registrar la información sobre los registros JSON erróneos. El uso de la badRecordsPath opción en un origen de datos basado en archivos tiene las siguientes limitaciones:
Valor predeterminado: ninguno |
columnNameOfCorruptRecord Tipo: String Columna para almacenar registros mal formados que no se pueden interpretar. Si para mode el análisis se establece como DROPMALFORMED , esta columna estará vacía.Valor predeterminado: _corrupt_record |
dateFormat Tipo: String Formato para analizar las cadenas de fecha. Valor predeterminado: yyyy-MM-dd |
dropFieldIfAllNull Tipo: Boolean Si se debe ignorar las columnas con todos los valores NULL o las matrices y estructuras vacías durante la inferencia del esquema. Valor predeterminado: false |
encoding o charset Tipo: String Nombre de la codificación de los archivos JSON. Consulte java.nio.charset.Charset para la lista de opciones. No se puede usar UTF-16 y UTF-32 cuando multiline es true .Valor predeterminado: UTF-8 |
inferTimestamp Tipo: Boolean Si se deben probar y deducir cadenas de marca de tiempo como TimestampType . Cuando se establece entrue , la inferencia de esquema puede tardar notablemente más tiempo. Debe habilitar cloudFiles.inferColumnTypes para usar con Auto Loader.Valor predeterminado: false |
lineSep Tipo: String Cadena de texto entre dos registros JSON consecutivos. Valor predeterminado: None, que abarca \r , \r\n y \n . |
locale Tipo: String Un identificador java.util.Locale . Influye en la fecha predeterminada, la marca de tiempo y el análisis decimal dentro de JSON.Valor predeterminado: US |
mode Tipo: String Modo de analizador para el control de registros con formato incorrecto. Uno de PERMISSIVE , DROPMALFORMED o FAILFAST .Valor predeterminado: PERMISSIVE |
multiLine Tipo: Boolean Si los registros JSON abarcan varias líneas. Valor predeterminado: false |
prefersDecimal Tipo: Boolean Intentos para inferir cadenas como DecimalType en lugar de tipo float o double cuando sea posible. También debe usar la inferencia de esquema, ya sea habilitandoinferSchema o bien usando cloudFiles.inferColumnTypes con el Auto Loader.Valor predeterminado: false |
primitivesAsString Tipo: Boolean Si se deben extrapolar los tipos primitivos, como, por ejemplo, números y booleanos, como StringType .Valor predeterminado: false |
readerCaseSensitive Tipo: Boolean Especifica el comportamiento de distinción entre mayúsculas y minúsculas cuando rescuedDataColumn está habilitado. Si es true, rescate las columnas de datos cuyos nombres difieren entre mayúsculas y minúsculas del esquema; de lo contrario, lea los datos de una manera sin distinción entre mayúsculas y minúsculas. Disponible en Databricks Runtime13.3 y versiones posteriores. Valor predeterminado: true |
rescuedDataColumn Tipo: String Si se recopilan todos los datos que no se pueden analizar por un error de coincidencia de tipos de datos o a una falta de coincidencia de esquemas (incluido el uso de mayúsculas y minúsculas en las columnas) en una columna independiente. Esta columna se incluye de forma predeterminada cuando se usa Auto Loader. Para obtener más información, consulte ¿Cuál es la columna de datos rescatados?. COPY INTO (heredado) no admite la columna de datos rescatada porque no se puede establecer manualmente el esquema mediante COPY INTO . Databricks recomienda usar Auto Loader para la mayoría de los escenarios de ingesta.Valor predeterminado: ninguno |
singleVariantColumn Tipo: String Si se debe ingerir todo el documento JSON, analizado en una sola columna Variant con la cadena especificada como el nombre de la columna. Si está deshabilitado, los campos JSON se incorporarán en sus propias columnas. Valor predeterminado: ninguno |
timestampFormat Tipo: String Formato para analizar cadenas de marca de tiempo. Valor predeterminado: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Tipo: String java.time.ZoneId que se usará al analizar marcas de tiempo y fechas.Valor predeterminado: ninguno |
CSV
opciones
Opción |
---|
badRecordsPath Tipo: String Ruta de acceso para almacenar archivos para registrar la información sobre los registros CSV no válidos. Valor predeterminado: ninguno |
charToEscapeQuoteEscaping Tipo: Char Carácter utilizado como carácter de escape de las comillas. Por ejemplo, para el registro siguiente: [ " a\\", b ] :
Valor predeterminado: '\0' |
columnNameOfCorruptRecord Compatible con el Cargador automático. No se admite para COPY INTO (heredado).Tipo: String Columna para almacenar registros mal formados que no se pueden interpretar. Si para mode el análisis se establece como DROPMALFORMED , esta columna estará vacía.Valor predeterminado: _corrupt_record |
comment Tipo: Char Define el carácter que representa un comentario de línea cuando se encuentra al principio de una línea de texto. Use '\0' para deshabilitar la omisión de comentarios.Valor predeterminado: '\u0000' |
dateFormat Tipo: String Formato para analizar las cadenas de fecha. Valor predeterminado: yyyy-MM-dd |
emptyValue Tipo: String Representación de cadena de un valor vacío. Valor predeterminado: "" |
encoding o charset Tipo: String Nombre de la codificación de los archivos CSV. Consulte java.nio.charset.Charset para la lista de opciones.
UTF-16 y UTF-32 no se pueden usar cuando multiline es true .Valor predeterminado: UTF-8 |
enforceSchema Tipo: Boolean Si se aplica forzosamente el esquema especificado o inferido a los archivos CSV. Si la opción está habilitada, se omiten los encabezados de los archivos CSV. Esta opción se omite de forma predeterminada al usar Auto Loader para rescatar datos y permitir la evolución del esquema. Valor predeterminado: true |
escape Tipo: Char Carácter de escape que se usará al analizar los datos. Valor predeterminado: '\' |
header Tipo: Boolean Si los archivos CSV contienen encabezado. Auto Loader supone que los archivos tienen encabezados al inferir el esquema. Valor predeterminado: false |
ignoreLeadingWhiteSpace Tipo: Boolean Si se omiten los espacios en blanco iniciales en los valores analizados. Valor predeterminado: false |
ignoreTrailingWhiteSpace Tipo: Boolean Si se omiten los espacios en blanco finales en los valores analizados. Valor predeterminado: false |
inferSchema Tipo: Boolean Decidir si inferir los tipos de datos de los registros CSV analizados o bien suponer que todas las columnas son de StringType . Requiere un paso adicional sobre los datos si se establece en true . Para el Cargador automático, use cloudFiles.inferColumnTypes en su lugar.Valor predeterminado: false |
lineSep Tipo: String Cadena entre dos registros CSV consecutivos. Valor predeterminado: None, que abarca \r , \r\n y \n . |
locale Tipo: String Un identificador java.util.Locale . Influye en la fecha predeterminada, la marca de tiempo y el análisis decimal dentro de CSV.Valor predeterminado: US |
maxCharsPerColumn Tipo: Int Máximo de caracteres esperados de un valor que se analizará. Se puede usar para evitar errores en la memoria. El valor predeterminado es -1 , que significa ilimitado.Valor predeterminado: -1 |
maxColumns Tipo: Int Límite máximo de columnas que puede tener un registro. Valor predeterminado: 20480 |
mergeSchema Tipo: Boolean Si se debe inferir el esquema en varios archivos y combinar el esquema de cada archivo. Habilitado de forma predeterminada para Auto Loader al inferir el esquema. Valor predeterminado: false |
mode Tipo: String Modo de analizador para el control de registros con formato incorrecto. Uno de estos valores: 'PERMISSIVE' ,'DROPMALFORMED' y 'FAILFAST' .Valor predeterminado: PERMISSIVE |
multiLine Tipo: Boolean Si los registros CSV abarcan varias líneas. Valor predeterminado: false |
nanValue Tipo: String Representación de cadena de un valor no numérico al analizar columnas FloatType y DoubleType .Valor predeterminado: "NaN" |
negativeInf Tipo: String Representación en cadena de infinito negativo al analizar las columnas FloatType o DoubleType .Valor predeterminado: "-Inf" |
nullValue Tipo: String Representación de cadena de un valor NULL. Valor predeterminado: "" |
parserCaseSensitive (en desuso)Tipo: Boolean Durante la lectura de archivos, si se alinean las columnas declaradas en el encabezado con el esquema, se distingue entre mayúsculas y minúsculas. Esto es true de manera predeterminada para Auto Loader. Las columnas que difieren en las mayúsculas y las minúsculas se rescatarán en rescuedDataColumn si está habilitado. Esta opción ha quedado en desuso en favor de readerCaseSensitive .Valor predeterminado: false |
positiveInf Tipo: String La representación en cadena del infinito positivo al interpretar columnas FloatType o DoubleType .Valor predeterminado: "Inf" |
preferDate Tipo: Boolean Intentos para inferir cadenas como fechas en lugar de marca de tiempo cuando sea posible. También debe usar la inferencia de esquemas, ya sea habilitando inferSchema o usandocloudFiles.inferColumnTypes con Cargador Automático.Valor predeterminado: true |
quote Tipo: Char Carácter utilizado para escapar valores en los que el delimitador de campo forma parte del valor. Valor predeterminado: " |
readerCaseSensitive Tipo: Boolean Especifica el comportamiento de distinción entre mayúsculas y minúsculas cuando rescuedDataColumn está habilitado. Si es true, rescate las columnas de datos cuyos nombres difieren entre mayúsculas y minúsculas del esquema; de lo contrario, lea los datos de una manera sin distinción entre mayúsculas y minúsculas.Valor predeterminado: true |
rescuedDataColumn Tipo: String Si se deben recopilar todos los datos que no se puedan analizar debido a un desajuste de tipos de datos y un desajuste de esquema (incluida la distinción entre mayúsculas y minúsculas en las columnas) en una columna independiente. Esta columna se incluye de forma predeterminada cuando se usa Auto Loader. Para obtener más información, consulte ¿Qué es la columna de datos rescatados?. COPY INTO (heredado) no admite la columna de datos rescatada porque no se puede establecer manualmente el esquema mediante COPY INTO . Databricks recomienda usar Auto Loader para la mayoría de los escenarios de ingesta.Valor predeterminado: ninguno |
sep o delimiter Tipo: String Cadena separadora de columnas. Valor predeterminado: "," |
skipRows Tipo: Int Número de filas desde el principio del archivo CSV que se debe omitir (incluidas las filas comentadas y vacías). Si header es true, el encabezado será la primera fila sin descodificar y sin marca de comentario.Valor predeterminado: 0 |
timestampFormat Tipo: String Formato para analizar cadenas de marca de tiempo. Valor predeterminado: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZone Tipo: String java.time.ZoneId que se usará al analizar marcas de tiempo y fechas.Valor predeterminado: ninguno |
unescapedQuoteHandling Tipo: String Estrategia para controlar las comillas sin escape. Opciones permitidas:
Valor predeterminado: STOP_AT_DELIMITER |
XML
opciones
Opción | Descripción | Ámbito |
---|---|---|
rowTag |
Etiqueta de fila de los archivos XML que se van a tratar como una fila. En el XML <books> <book><book>...<books> de ejemplo, el valor adecuado es book . Esta es una opción necesaria. |
leer |
samplingRatio |
Define una fracción de filas usadas para la inferencia de esquema. Las funciones integradas XML omiten esta opción. Predeterminado: 1.0 . |
leer |
excludeAttribute |
Si se excluyen los atributos en los elementos. Predeterminado: false . |
leer |
mode |
Modo para tratar los registros corruptos durante el análisis sintáctico.PERMISSIVE : Para los registros corruptos, coloca la cadena malformada en un campo configurado por columnNameOfCorruptRecord , y establece los campos con formato incorrecto en null . Para conservar los registros corruptos, puede establecer un campo de tipo string denominado columnNameOfCorruptRecord en un esquema definido por el usuario. Si un esquema no tiene el campo, los registros dañados se quitan durante el análisis. Al deducir un esquema, agrega implícitamente un campo columnNameOfCorruptRecord en un esquema de salida.DROPMALFORMED : omite los registros dañados. Este modo no es compatible con las funciones integradas XML.FAILFAST : Arroja una excepción cuando el analizador encuentra registros dañados. |
leer |
inferSchema |
Si true , intenta deducir un tipo adecuado para cada columna del "DataFrame" resultante. Si false , todas las columnas resultantes son del tipo string . Valor predeterminado:true . Las funciones integradas XML omiten esta opción. |
leer |
columnNameOfCorruptRecord |
Permite cambiar el nombre del nuevo campo que contiene una cadena con formato incorrecto creada por el el modo PERMISSIVE . Predeterminado: spark.sql.columnNameOfCorruptRecord . |
leer |
attributePrefix |
El prefijo de los atributos para diferenciarlos de los elementos. Este será el prefijo para los nombres de campo. El valor predeterminado es _ . Puede estar vacío para leer XML, pero no para escribir. |
lectura,escritura |
valueTag |
Etiqueta usada para los datos de caracteres dentro de los elementos que también tienen atributos o elementos secundarios. El usuario puede especificar el valueTag campo en el esquema o se agregará automáticamente durante la inferencia de esquema cuando los datos de caracteres estén presentes en elementos con otros elementos o atributos. Opción predeterminada: _VALUE |
lectura,escritura |
encoding |
Para leer, descodifica los archivos XML mediante el tipo de codificación especificado. Para escribir, especifica la codificación (charset) de los archivos XML guardados. Las funciones integradas XML omiten esta opción. Predeterminado: UTF-8 . |
lectura,escritura |
ignoreSurroundingSpaces |
Define si deben omitirse los espacios en blanco circundantes de los valores que se están leyendo. Predeterminado: true . Los datos de caracteres de solo espacio en blanco se omiten. |
leer |
rowValidationXSDPath |
Ruta a un archivo XSD opcional que se utiliza para validar el XML de cada fila individualmente. Las filas que no se validan se tratan como errores de análisis como se mencionó anteriormente. De otro modo, el archivo XSD no afecta al esquema proporcionado o inferido. | leer |
ignoreNamespace |
Si true , se omiten los prefijos de los espacios de nombres en los elementos y atributos XML. Las etiquetas <abc:author> y <def:author> , por ejemplo, se tratan como si ambos son simplemente <author> . Los espacios de nombres no se pueden omitir en el elemento rowTag , solo sus elementos secundarios de lectura. El análisis XML no es compatible con el espacio de nombres, incluso si es false . Predeterminado: false . |
leer |
timestampFormat |
Cadena de formato de marca de tiempo personalizada que sigue el formato del patrón de fecha y hora . Esto se aplica al tipo timestamp . Predeterminado: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] . |
lectura,escritura |
timestampNTZFormat |
Cadena de formato personalizada para la marca de tiempo sin zona horaria que sigue el formato del patrón fecha y hora. Esto se aplica al tipo TimestampNTZType. Valor predeterminado:yyyy-MM-dd'T'HH:mm:ss[.SSS] |
lectura,escritura |
dateFormat |
Cadena de formato de fecha personalizada que sigue el patrón de fecha y hora. Esto se aplica al tipo de fecha. Predeterminado: yyyy-MM-dd . |
lectura,escritura |
locale |
Establece una configuración regional como etiqueta de idioma en formato IETF BCP 47. Por ejemplo, locale se usa al analizar fechas y marcas de tiempo. Predeterminado: en-US . |
leer |
rootTag |
Etiqueta raíz de los archivos XML. Por ejemplo, en <books> <book><book>...</books> , el valor adecuado es books . Puede incluir atributos básicos especificando un valor como books foo="bar" . Predeterminado: ROWS . |
escribir |
declaration |
Contenido de la declaración XML que se va a escribir al principio de cada archivo XML de salida, antes de rootTag . Por ejemplo, un valor de foo provoca que se escriba <?xml foo?> . Se establece una cadena vacía para suprimirla. Opción predeterminada: version="1.0" encoding="UTF-8" standalone="yes" . |
escribir |
arrayElementName |
Nombre del elemento XML que incluye cada elemento de una columna con valores de matriz al escribir. Predeterminado: item . |
escribir |
nullValue |
Establece la representación en cadena de un valor nulo. Predeterminado: cadena null . Cuando se trata de null , el analizador no escribe atributos y elementos para los campos. |
lectura,escritura |
compression |
Código de compresión a utilizar al guardar en un archivo. Puede ser uno de los nombres abreviados conocidos sin distinción de mayúsculas y minúsculas (none , bzip2 , gzip ,lz4 , snappy ydeflate ). Las funciones integradas XML omiten esta opción. Predeterminado: none . |
escribir |
validateName |
Si es true, produce un error si la validación del nombre del elemento XML falla. Por ejemplo, los nombres de campo SQL pueden tener espacios, pero los nombres de elementos XML no. Valor predeterminado:true . |
escribir |
readerCaseSensitive |
Especifica el comportamiento de distinción entre mayúsculas y minúsculas cuando se habilita rescuedDataColumn. Si es true, rescate las columnas de datos cuyos nombres difieren entre mayúsculas y minúsculas del esquema; de lo contrario, lea los datos de una manera sin distinción entre mayúsculas y minúsculas. Predeterminado: true . |
leer |
rescuedDataColumn |
Si se van a recopilar todos los datos que no se pueden analizar debido a un desajuste de tipo de datos y a un desajuste de esquema (incluido el uso de mayúsculas y minúsculas de columna) en una columna separada. Esta columna se incluye de forma predeterminada cuando se usa Auto Loader. Para obtener más información, consulte ¿Qué es la columna de datos rescatados?.COPY INTO (heredado) no admite la columna de datos rescatada porque no se puede establecer manualmente el esquema mediante COPY INTO . Databricks recomienda usar Auto Loader para la mayoría de los escenarios de ingesta.Predeterminado: Ninguno. |
leer |
singleVariantColumn |
Especifica el nombre de la columna variante única. Si se especifica esta opción para leer, analice todo el registro XML en una sola columna Variant con el valor de cadena de opción especificado como nombre de la columna. Si se ofrece esta opción para la escritura, escriba el valor de la columna única de Variant en archivos XML. Predeterminado: none . |
lectura,escritura |
PARQUET
opciones
Opción |
---|
datetimeRebaseMode Tipo: String Controla el cambio de base de los valores de fecha y marca de tiempo entre el calendario juliano y gregoriano proléptico. Valores permitidos: EXCEPTION , LEGACY yCORRECTED .Valor predeterminado: LEGACY |
int96RebaseMode Tipo: String Controla el cambio de base de los valores de marca de tiempo INT96 entre el calendario juliano y el gregoriano proléptico. Valores permitidos: EXCEPTION , LEGACY yCORRECTED .Valor predeterminado: LEGACY |
mergeSchema Tipo: Boolean Si se debe inferir el esquema en varios archivos y combinar el esquema de cada archivo. Valor predeterminado: false |
readerCaseSensitive Tipo: Boolean Especifica el comportamiento de distinción entre mayúsculas y minúsculas cuando rescuedDataColumn está habilitado. Si es true, rescate las columnas de datos cuyos nombres difieren entre mayúsculas y minúsculas del esquema; de lo contrario, lea los datos de una manera sin distinción entre mayúsculas y minúsculas.Valor predeterminado: true |
rescuedDataColumn Tipo: String Si se deben recopilar todos los datos que no se puedan analizar debido a un desajuste de tipos de datos y un desajuste de esquema (incluida la distinción entre mayúsculas y minúsculas en las columnas) en una columna independiente. Esta columna se incluye de forma predeterminada cuando se usa Auto Loader. Para obtener más información, consulte ¿Qué es la columna de datos rescatados?. COPY INTO (heredado) no admite la columna de datos rescatada porque no se puede establecer manualmente el esquema mediante COPY INTO . Databricks recomienda usar Auto Loader para la mayoría de los escenarios de ingesta.Valor predeterminado: ninguno |
AVRO
opciones
Opción |
---|
avroSchema Tipo: String Esquema opcional proporcionado por un usuario en formato Avro. Al leer Avro, esta opción se puede establecer en un esquema evolucionado, que es compatible con el esquema de Avro real pero distinto de este. El esquema de deserialización será coherente con el esquema evolucionado. Por ejemplo, si establece un esquema evolucionado que contiene una columna adicional con un valor predeterminado, el resultado de lectura contendrá también la nueva columna. Valor predeterminado: ninguno |
datetimeRebaseMode Tipo: String Controla el cambio de base de los valores de fecha y marca de tiempo entre el calendario juliano y gregoriano proléptico. Valores permitidos: EXCEPTION , LEGACY yCORRECTED .Valor predeterminado: LEGACY |
mergeSchema Tipo: Boolean Si se debe inferir el esquema en varios archivos y combinar el esquema de cada archivo. mergeSchema para Avro no flexibiliza los tipos de datos.Valor predeterminado: false |
readerCaseSensitive Tipo: Boolean Especifica el comportamiento de distinción entre mayúsculas y minúsculas cuando rescuedDataColumn está habilitado. Si es true, rescate las columnas de datos cuyos nombres difieren entre mayúsculas y minúsculas del esquema; de lo contrario, lea los datos de una manera sin distinción entre mayúsculas y minúsculas.Valor predeterminado: true |
rescuedDataColumn Tipo: String Si se deben recopilar todos los datos que no se puedan analizar debido a un desajuste de tipos de datos y un desajuste de esquema (incluida la distinción entre mayúsculas y minúsculas en las columnas) en una columna independiente. Esta columna se incluye de forma predeterminada cuando se usa Auto Loader. COPY INTO (heredado) no admite la columna de datos rescatada porque no se puede establecer manualmente el esquema mediante COPY INTO . Databricks recomienda usar Auto Loader para la mayoría de los escenarios de ingesta.Para obtener más información, consulte ¿Qué es la columna de datos rescatados?. Valor predeterminado: ninguno |
BINARYFILE
opciones
Los archivos binarios no tienen ninguna opción de configuración adicional.
TEXT
opciones
Opción |
---|
encoding Tipo: String Nombre de la codificación del separador de líneas de archivo TEXT. Para obtener una lista de opciones, vea java.nio.charset.Charset .El contenido del archivo no se ve afectado por esta opción y se lee as-is. Valor predeterminado: UTF-8 |
lineSep Tipo: String Cadena entre dos registros de TEXT consecutivos. Valor predeterminado: None, que abarca \r , \r\n y \n |
wholeText Tipo: Boolean Si se debe leer un archivo como único registro. Valor predeterminado: false |
ORC
opciones
Opción |
---|
mergeSchema Tipo: Boolean Si se debe inferir el esquema en varios archivos y combinar el esquema de cada archivo. Valor predeterminado: false |
Opciones específicas de la nube
Auto Loader ofrece una serie de opciones para configurar la infraestructura en la nube.
Opciones específicas de AWS
Proporcione la siguiente opción solo si elige cloudFiles.useNotifications
= true
y desea que Auto Loader configure automáticamente los servicios de notificación:
Opción |
---|
cloudFiles.region Tipo: String La región en la que reside el cubo S3 de origen y donde se crean los servicios AWS SDK y SQS. Valor predeterminado: la región de la instancia EC2. |
Proporcione la siguiente opción solo si elige cloudFiles.useNotifications
= true
y desea que el cargador automático use una cola que ya haya configurado:
Opción |
---|
cloudFiles.queueUrl Tipo: String Dirección URL de la cola de SQS. Si se proporciona, el cargador automático consume directamente los eventos de esta cola en lugar de configurar sus propios servicios AWS SNS y SQS. Valor predeterminado: Ninguno |
Opciones de autenticación de AWS
Proporcione la siguiente opción de autenticación para usar una credencial de servicio de Databricks:
Opción |
---|
databricks.serviceCredential Tipo: String Nombre de la credencial de servicio de Databricks . Disponible en Databricks Runtime 16.1 y versiones posteriores. Valor predeterminado: Ninguno |
Cuando las credenciales del servicio Databricks o los roles de IAM no están disponibles, puede proporcionar las siguientes opciones de autenticación en su lugar:
Opciones |
---|
cloudFiles.awsAccessKey Tipo: String El ID de clave de acceso de AWS del usuario. Debe proporcionarse con cloudFiles.awsSecretKey .Valor predeterminado: Ninguno |
cloudFiles.awsSecretKey Tipo: String Clave de acceso secreta de AWS para el usuario. Debe proporcionarse con cloudFiles.awsAccessKey .Valor predeterminado: Ninguno |
cloudFiles.roleArn Tipo: String EL ARN de un rol IAM que se debe asumir, si procede. El rol se puede asumir desde el perfil de instancia del clúster o proporcionando credenciales con cloudFiles.awsAccessKey y cloudFiles.awsSecretKey .Valor predeterminado: Ninguno |
cloudFiles.roleExternalId Tipo: String Identificador que se debe proporcionar a la vez que se asume un rol mediante cloudFiles.roleArn .Valor predeterminado: Ninguno |
cloudFiles.roleSessionName Tipo: String Un nombre de sesión opcional que se usará al asumir un rol mediante cloudFiles.roleArn .Valor predeterminado: Ninguno |
cloudFiles.stsEndpoint Tipo: String Un punto de conexión opcional para proporcionar acceso a AWS STS al asumir un rol mediante cloudFiles.roleArn .Valor predeterminado: Ninguno |
Opciones específicas de Azure
Debe proporcionar valores para todas las opciones siguientes si especifica cloudFiles.useNotifications
= true
y desea que el cargador automático configure automáticamente los servicios de notificación:
Si una credencial de servicio de Databricks no está disponible, puede proporcionar las siguientes opciones de autenticación en su lugar:
Opciones |
---|
cloudFiles.clientId Tipo: String Id. de cliente o id. de aplicación de la entidad de servicio. Valor predeterminado: Ninguno |
cloudFiles.clientSecret Tipo: String El secreto de cliente de la entidad de servicio. Valor predeterminado: Ninguno |
cloudFiles.connectionString Tipo: String Cadena de conexión de la cuenta de almacenamiento, en función de la clave de acceso de la cuenta o de la firma de acceso compartido (SAS). Valor predeterminado: Ninguno |
cloudFiles.tenantId Tipo: String Id. de inquilino de Azure en el que se ha creado la entidad de servicio. Valor predeterminado: Ninguno |
Importante
La configuración automatizada de las notificaciones está disponible en las regiones de Azure China y Government con Databricks Runtime 9.1 y versiones superiores. Debe proporcionar un queueName
para usar el cargador automático con notificaciones de archivos en estas regiones para versiones anteriores de DBR.
Proporcione la siguiente opción solo si elige cloudFiles.useNotifications
= true
y desea que el cargador automático use una cola que ya haya configurado:
Opción |
---|
cloudFiles.queueName Tipo: String Nombre de la cola de Azure. Si se proporciona, el origen de archivos en la nube consume directamente los eventos de esta cola en lugar de configurar sus propios servicios de Azure Event Grid y Queue Storage. En ese caso, databricks.serviceCredential o cloudFiles.connectionString solo necesita permisos de lectura en la cola.Valor predeterminado: Ninguno |
Opciones específicas de Google
El cargador automático puede configurar automáticamente los servicios de notificaciones utilizando las credenciales de servicio de Databricks . La cuenta de servicio creada con la credencial de servicio de Databricks requerirá los permisos especificados en Configurar flujos de cargador automático en modo de notificación de archivos.
Si una credencial de servicio de Databricks no está disponible, puede usar las cuentas de servicio de Google directamente. Puede configurar el clúster para asumir una cuenta de servicio siguiendo la configuración del servicio de Google o proporcionar las siguientes opciones de autenticación directamente:
Opciones |
---|
cloudFiles.client Tipo: String El Id. de cliente de la cuenta de servicio de Google. Valor predeterminado: Ninguno |
cloudFiles.clientEmail Tipo: String El correo electrónico de la cuenta de servicio de Google. Valor predeterminado: Ninguno |
cloudFiles.privateKey Tipo: String Clave privada que se genera para la cuenta de servicio de Google. Valor predeterminado: Ninguno |
cloudFiles.privateKeyId Tipo: String Identificador de la clave privada que se genera para la cuenta de servicio de Google. Valor predeterminado: Ninguno |
Proporcione la siguiente opción solo si elige cloudFiles.useNotifications
= true
y desea que el cargador automático use una cola que ya haya configurado:
Opción |
---|
cloudFiles.subscription Tipo: String Nombre de la suscripción de Google Cloud Pub/Sub. Si se proporciona, el origen de archivos en la nube consume los eventos de esta cola en lugar de configurar sus propios servicios GCS Notification y Google Cloud Pub/Sub. Valor predeterminado: Ninguno |