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.
En este artículo se explican las características y comportamientos que están disponibles actualmente y los que se introducirán próximamente en la computación sin servidor para cuadernos y tareas.
Para obtener más información sobre el proceso sin servidor, consulte Conectar al proceso sin servidor.
Azure Databricks publica periódicamente actualizaciones de proceso sin servidor, actualizando automáticamente el entorno de ejecución de proceso sin servidor para admitir mejoras y actualizaciones en la plataforma. Todos los usuarios obtienen las mismas actualizaciones, que se han implementado durante un breve período de tiempo.
Versiones de entorno sin servidor
El proceso sin servidor para cuadernos y trabajos usa versiones de entorno, que proporcionan una API de cliente estable basada en Spark Connect para garantizar la compatibilidad de las aplicaciones. Esto permite a Databricks actualizar el servidor de forma independiente, ofrecer mejoras de rendimiento, mejoras de seguridad y correcciones de errores sin necesidad de cambios de código en las cargas de trabajo.
Cada versión del entorno incluye una versión específica de Python y un conjunto de paquetes de Python con versiones definidas. Databricks presenta nuevas características y correcciones en la versión más reciente del entorno al aplicar actualizaciones de seguridad a todas las versiones de entorno compatibles.
Para obtener las notas de la versión del entorno sin servidor, consulte Versiones de entorno sin servidor.
Notas de lanzamiento
En esta sección se incluyen notas de la versión para el proceso sin servidor. Las notas de la versión se organizan por año y semana del año. El proceso sin servidor siempre se ejecuta con la versión publicada más recientemente que se muestra aquí.
- Versión 17.3
- Versión 17.2
- Versión 17.1
- Versión 4 del entorno sin servidor
- Versión 17.0
- Los objetivos de rendimiento sin servidor están disponibles en disponibilidad general
- Versión 16.4
- El modo de rendimiento ahora se puede configurar en trabajos sin servidor
- Versión 16.3
- Versión 16.2
- Configuración de alta memoria disponible en cuadernos sin servidor (versión preliminar pública)
- Versión 16.1
- Versión 15.4
- El JDK se actualiza de JDK 8 a JDK 17
- Versión 15.1
- Versión 14.3
Versión 17.3
28 de octubre de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 17.3 LTS.
Nuevas características
LIMIT Compatibilidad con todas las CTE recursivas: ahora puede usar la
LIMIT ALLcláusula con expresiones de tabla comunes recursivas (rCTEs) para especificar explícitamente que no se debe aplicar ningún límite de filas a los resultados de la consulta. Consulte Expresión de tabla común (CTE).Anexar a archivos de volúmenes del catálogo de Unity devuelve un mensaje de error correcto: al intentar anexar a archivos existentes en volúmenes del catálogo de Unity, ahora se devuelve un mensaje de error más descriptivo para ayudarle a comprender y resolver el problema.
st_dumpcompatibilidad con funciones: ahora puede usar last_dumpfunción para descomponer un objeto geométrico en sus componentes elementales y obtener un conjunto de geometrías más sencillas. Consulte last_dumpfunción.Ahora se admiten funciones de anillo interior de polígono: ahora puede usar las siguientes funciones para trabajar con anillos interiores de polígono:
-
st_numinteriorrings: obtiene el número de límites internos (anillos) de un polígono. Consulte last_numinteriorringsfunción. -
st_interiorringn: extraiga el límite interno n-ésimo de un polígono y lo devuelva como una cadena de líneas. Consulte last_interiorringnfunción.
-
EXECUTE IMMEDIATE uso de expresiones constantes: la
EXECUTE IMMEDIATEinstrucción ahora admite el uso de expresiones constantes en la cadena de consulta, lo que permite una ejecución SQL dinámica más flexible. Consulte EXECUTE IMMEDIATE.Permitir
spark.sql.files.maxPartitionBytesen la computación sin servidor: ahora puede configurar elspark.sql.files.maxPartitionBytesparámetro de configuración de Spark en computación sin servidor para controlar el número máximo de bytes que se van a incluir en una sola partición al leer archivos. Consulte Configuración de las propiedades de Spark para cuadernos y trabajos sin servidor.
Cambios de comportamiento
Soporte para la información de actualización de MV/ST en DESCRIBE EXTENDED AS JSON: El
DESCRIBE EXTENDED AS JSONcomando ahora incluye información de actualización para vistas materializadas y tablas de streaming, proporcionando visibilidad acerca de la hora y el estado de la última actualización.Agregue la columna de metadatos a DESCRIBE QUERY y DESCRIBE TABLE: los
DESCRIBE QUERYcomandos yDESCRIBE TABLEahora incluyen una columna de metadatos en su salida, lo que proporciona información adicional sobre las propiedades y características de cada columna.Control correcto de estructuras nulas al quitar columnas NullType: Azure Databricks ahora controla correctamente los valores de estructura NULL al quitar columnas con
NullType, lo que impide posibles daños en los datos o un comportamiento inesperado.Control mejorado de estructuras nulas en Parquet: esta versión incluye mejoras en cómo se controlan los valores de estructura NULL al leer y escribir en archivos Parquet, lo que garantiza un comportamiento más coherente y correcto.
Actualización de la biblioteca aws-msk-iam-auth para Kafka: la
aws-msk-iam-authbiblioteca que se usa para la autenticación de IAM de Amazon MSK se ha actualizado a la versión más reciente, lo que proporciona una seguridad y compatibilidad mejoradas.
Versión 17.2
25 de septiembre de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 17.2.
Nuevas características
ST_ExteriorRingahora se admite la función: ahora puede usar laST_ExteriorRingfunción para extraer el límite exterior de un polígono y devolverlo como una cadena de líneas. Consulte last_exteriorringfunción.Palabra clave de soporte
TEMPORARYpara la creación de vistas de métricas: ahora puede usar laTEMPORARYpalabra clave al crear una vista de métricas. Las vistas de métricas temporales solo son visibles en la sesión que las creó y se quitan cuando finaliza la sesión. Consulte CREATE VIEW.Uso de E/S nativa para
LokiFileSystem.getFileStatusen S3:LokiFileSystem.getFileStatusahora utiliza la pila de E/S nativa para el tráfico de Amazon S3 y devuelve objetosorg.apache.hadoop.fs.FileStatusen lugar deshaded.databricks.org.apache.hadoop.fs.s3a.S3AFileStatus.El Cargador Automático deduce las columnas de partición en
singleVariantColumnmodo: El Cargador Automático ahora infiere las columnas de partición de las rutas de archivos al ingerir datos como un tipo de variante semiestructurada mediante la opciónsingleVariantColumn. Anteriormente, las columnas de partición no se detectaron automáticamente. Consulte Opciones del cargador automático.
Cambios de comportamiento
DESCRIBE CONNECTIONmuestra la configuración del entorno para las conexiones JDBC: Azure Databricks ahora incluye la configuración de entorno definida por el usuario en laDESCRIBE CONNECTIONsalida de las conexiones JDBC que admiten controladores personalizados y se ejecutan de forma aislada. Otros tipos de conexión permanecen sin cambios.Opción para truncar el historial uniforme durante la migración de tablas administradas: ahora puede truncar el historial uniforme al migrar tablas con Uniform/Iceberg habilitado mediante
ALTER TABLE...SET MANAGED. Esto simplifica las migraciones y reduce el tiempo de inactividad en comparación con deshabilitar y volver a habilitar Uniforme manualmente.Resultados correctos para
splitcon regex vacío y límite positivo: Azure Databricks ahora devuelve resultados correctos cuando se usasplit functioncon una expresión regular vacía y un límite positivo. Anteriormente, la función truncaba incorrectamente la cadena restante en lugar de incluirla en el último elemento.Corrección del manejo de errores de
url_decodeytry_url_decodeen Photon: En Photon,try_url_decode()yurl_decode()ahora devuelvenfailOnError = falsepara cadenas codificadas por URL no válidas en lugar de que falle la consulta.Entorno de ejecución compartido para UDF de Python del catálogo de Unity: Azure Databricks ahora comparte el entorno de ejecución para las funciones de tabla definidas por el usuario (UDF) de Python desde el mismo propietario y sesión de Spark. Hay disponible una cláusula opcional
STRICT ISOLATIONpara deshabilitar el uso compartido de UDF con efectos secundarios, como modificar variables de entorno o ejecutar código arbitrario.
Versión 17.1
19 de agosto de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 17.1.
Nuevas características
- Reducción del uso de memoria para esquemas amplios en Photon Writer: se realizaron mejoras en el motor Photon que reduce significativamente el uso de memoria para esquemas anchos, abordando escenarios que anteriormente generaron errores de memoria insuficiente.
Cambios de comportamiento
Error producido para restricciones no válidas
CHECK: Azure Databricks ahora produce unaAnalysisExceptionexcepción si no se puede resolver una expresión de restricción durante laCHECKvalidación de restricciones.El conector pulsar ya no expone Bouncy Castle: la biblioteca Bouncy Castle ahora está sombreada en el conector pulsar para evitar conflictos de ruta de clase. Como resultado, los trabajos de Spark ya no pueden acceder a
org.bouncycastle.*las clases desde el conector. Si el código depende de Bouncy Castle, instale la biblioteca manualmente en el entorno sin servidor.Auto Loader usa eventos de archivo de forma predeterminada si está disponible: Auto Loader usa eventos de archivo en lugar de enumerar directorios cuando la ruta de acceso de carga es una ubicación externa con eventos de archivo habilitados. El valor predeterminado para
useManagedFileEventsahoraif_availablees (erafalse). Esto puede mejorar el rendimiento de la ingesta y registra una advertencia si los eventos de archivo aún no están habilitados.El conector de Teradata corrige la comparación de cadenas que distingue mayúsculas de minúsculas: el conector de Teradata ahora tiene como valor predeterminado , alineando el comportamiento de comparación de cadenas con Azure Databricks, lo que hace que distingue mayúsculas
TMODE=ANSIde minúsculas. Este cambio es configurable y no afecta a los usuarios existentes a menos que opten por participar.
Versión 4 del entorno sin servidor
13 de agosto de 2025
La versión 4 del entorno ahora está disponible en los cuadernos y trabajos sin servidor. Esta versión del entorno incluye actualizaciones de biblioteca y actualizaciones de API. Consulte Serverless environment version 4 (Entorno sin servidor versión 4).
Versión 17.0
24 de julio de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 17.0.
Nuevas características
Compatibilidad con procedimientos SQL: los scripts SQL ahora se pueden encapsular en un procedimiento almacenado como un recurso reutilizable en el catálogo de Unity. Puede crear un procedimiento mediante el comando CREATE PROCEDURE y, a continuación, llamarlo mediante el comando CALL .
Establecer una intercalación predeterminada para las Funciones SQL: Usar la nueva
DEFAULT COLLATIONcláusula en el CREATE FUNCTION comando define la intercalación predeterminada que se utiliza paraSTRINGlos parámetros, el tipo de valor devuelto ySTRINGlos literales en el cuerpo de la función.Compatibilidad con expresiones de tabla comunes recursivas (rCTE): Azure Databricks ahora admite la navegación de datos jerárquicos mediante expresiones de tabla comunes recursivas (rCTEs). Use un CTE de referencia automática con
UNION ALLpara seguir la relación recursiva.PySpark y Spark Connect ahora admiten dataframes
df.mergeIntoAPI: PySpark y Spark Connect ahora admiten ladf.mergeIntoAPI.Compatibilidad
ALL CATALOGSconSHOWSCHEMAS: laSHOW SCHEMASsintaxis se actualiza para aceptarALL CATALOGS, lo que le permite recorrer en iteración todos los catálogos activos que admiten espacios de nombres. Los atributos de salida ahora incluyen unacatalogcolumna que indica el catálogo del espacio de nombres correspondiente.La agrupación en clústeres líquidos ahora compacta los vectores de eliminación de forma más eficaz: las tablas delta con agrupación en clústeres líquidos ahora aplican cambios físicos de vectores de eliminación de forma más eficaz cuando
OPTIMIZEse ejecuta. Para obtener más información, consulte Aplicar cambios a archivos de datos Parquet.Permitir expresiones no deterministas en
UPDATE/INSERTvalores de columna paraMERGEoperaciones: Azure Databricks ahora permite el uso de expresiones no deterministas en valores de columna actualizados e insertados deMERGEoperaciones. Por ejemplo, ahora puede generar valores dinámicos o aleatorios para columnas mediante expresiones comorand().Cambio de las API de Python delta MERGE para devolver DataFrame en lugar de Unit: las API de Python
MERGE(comoDeltaMergeBuilder) ahora también devuelven un DataFrame como la API de SQL, con los mismos resultados.
Cambios de comportamiento
Cambio de comportamiento para la opción de lista de directorios incrementales del cargador automático: el valor de la opción Cargador
cloudFiles.useIncrementalListingautomático en desuso ahora está establecido en un valor predeterminado defalse. Como resultado, este cambio hace que el cargador automático realice una lista de directorios completa cada vez que se ejecute. Databricks recomienda no usar esta opción. En su lugar, use el modo de notificación de archivo con eventos de archivo.CREATE VIEWLas cláusulas de nivel de columna ahora producen errores cuando la cláusula solo se aplicaría a vistas materializadas:CREATE VIEWlos comandos que especifican una cláusula de nivel de columna que solo es válida paraMATERIALIZED VIEWs producen un error. Las cláusulas afectadas incluyenNOT NULL, tipos de datos especificados,DEFAULTyCOLUMN MASK.
Los objetivos de rendimiento sin servidor tienen disponibilidad general.
10 de junio de 2025
La selección de la configuración de rendimiento sin servidor para trabajos y canalizaciones ahora está disponible con carácter general.
Cuando la configuración optimizada para rendimiento está habilitada, la carga de trabajo está optimizada para un tiempo de inicio y ejecución más rápidos. Cuando está deshabilitada, la carga de trabajo sin servidor se ejecuta en modo de rendimiento estándar, que está optimizada para el costo y tiene una latencia de inicio ligeramente mayor.
Para obtener más información, vea Seleccionar un modo de rendimiento y Seleccionar un modo de rendimiento.
Versión 16.4
28 de mayo de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 16.4 LTS.
Cambios de comportamiento
Corrección para respetar las opciones de los planes almacenados en caché del origen de datos: esta actualización garantiza que las lecturas de la tabla respeten las opciones establecidas para todos los planes de origen de datos cuando se almacenan en caché, no solo en la primera lectura de tabla almacenada en caché. Anteriormente, la tabla de orígenes de datos lee en caché el primer plan, pero no pudo tener en cuenta las distintas opciones de las consultas posteriores.
Active la marca para solicitar la materialización de origen para las operaciones MERGE: anteriormente los usuarios podían desactivar la materialización de origen en MERGE poniendo
merge.materializeSourceanone. Con la nueva bandera habilitada, la materialización de la fuente siempre será necesaria y los intentos de deshabilitarla producirán un error. Databricks planea habilitar esta marca solo para los clientes que no han cambiado previamente esta configuración, por lo que la mayoría de los usuarios no deben experimentar ningún cambio en el comportamiento.
Nuevas características
El cargador automático ahora puede limpiar los archivos procesados en el directorio de origen: ahora puede indicar al cargador automático que mueva o elimine automáticamente los archivos que se han procesado. Active esta funcionalidad mediante la opción
cloudFiles.cleanSourceAuto Loader. Consulte Opciones del cargador automático, encloudFiles.cleanSource.Compatibilidad con la ampliación de tipos agregada para el streaming desde tablas Delta: Esta versión agrega compatibilidad para hacer streaming desde una tabla Delta que tiene datos de columnas con tipos ampliados y para compartir una tabla Delta con la ampliación de tipos habilitada mediante Databricks-to-Databricks Delta Sharing. La característica de ampliación de tipos se encuentra actualmente en versión preliminar pública. Consulte Ampliación de tipos.
IDENTIFIER Compatibilidad ahora disponible en DBSQL para las operaciones de catálogo: ahora puede usar la
IDENTIFIERcláusula al realizar las siguientes operaciones de catálogo:CREATE CATALOGDROP CATALOGCOMMENT ON CATALOGALTER CATALOG
Esta nueva sintaxis permite especificar dinámicamente nombres de catálogo mediante parámetros definidos para estas operaciones, lo que permite flujos de trabajo sql más flexibles y reutilizables. Como ejemplo de la sintaxis, considere dónde
CREATE CATALOG IDENTIFIER(:param)paramse proporciona un parámetro para especificar un nombre de catálogo. Consulte la cláusula IDENTIFIER.Las expresiones intercaladas ahora proporcionan alias transitorios generados automáticamente: los alias generados automáticamente para las expresiones intercaladas ahora incorporan
COLLATEinformación deterministamente. Los alias generados automáticamente son transitorios (inestables) y no deben basarse en . En su lugar, como procedimiento recomendado, useexpression AS aliasde forma coherente y explícita.Agregar soporte de la API de aplicación de filtros a las fuentes de datos de Python: La computación sin servidor ahora admite la aplicación de filtros a la lectura por lotes de la fuente de datos de Python como una API, similar a la
SupportsPushDownFiltersinterfaz. Consulte las notas de lanzamiento de la versión 16.4 LTS.Mejora de la traza de UDF de Python: La mejora de la traza en los UDF de Python ahora incluye marcos tanto del controlador como del ejecutor, junto con los marcos del cliente, lo que da lugar a mejores mensajes de error que muestran detalles más amplios y relevantes (como el contenido de línea de los marcos dentro de un UDF).
UNION/EXCEPT/INTERSECT dentro de una vista y EXECUTE IMMEDIATE ahora devuelven resultados correctos: Consultas para definiciones de vistas temporales y persistentes con nivel
UNION/EXCEPT/INTERSECTsuperior y las columnas sin alias devolvieron previamente resultados incorrectos porqueUNION/EXCEPT/INTERSECTlas palabras clave se consideraron alias. Ahora esas consultas realizarán correctamente toda la operación de configuración.Guía de migración y configuración del plan de caché del origen de datos: leer desde una tabla de archivos fuente respetará apropiadamente las opciones de consulta (por ejemplo, delimitadores). Anteriormente, el primer plan de consulta se almacenaba en caché y se omiteban los cambios de opción posteriores. Para restaurar el comportamiento anterior, establezca
spark.sql.legacy.readFileSourceTableCacheIgnoreOptionsentrue.Nuevas
listaggystring_aggfunciones: A partir de esta actualización, puede usar las funcioneslistaggostring_aggpara agregar valoresSTRINGyBINARYdentro de un grupo. Consulte string_agg.
El modo de rendimiento ahora se puede configurar en trabajos sin servidor
14 de abril de 2025
Ahora puede seleccionar el modo de rendimiento de un trabajo sin servidor mediante la configuración optimizada para rendimiento en la página de detalles del trabajo. Anteriormente, todos los trabajos sin servidor estaban optimizados para el rendimiento. Ahora, puede deshabilitar la configuración optimizada para rendimiento para ejecutar la carga de trabajo en el modo de rendimiento estándar. El modo de rendimiento estándar está diseñado para reducir los costos en tareas donde es aceptable una latencia de inicio ligeramente mayor.
El modo de rendimiento estándar no se admite para canalizaciones continuas, ejecuciones únicas creadas mediante el runs/submit punto de conexión o tareas de trabajo de SQL Warehouse, incluidas las vistas materializadas.
Para obtener más información sobre el modo de rendimiento, consulte Seleccionar un modo de rendimiento.
Versión 16.3
9 de abril de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 16.3.
Cambios de comportamiento
-
*Se ha mejorado el mensaje de error cuando
kafka.sasl.client.callback.handler.classse asigna un valor no válido: esta versión incluye un cambio para devolver un mensaje de error más descriptivo cuandokafka.sasl.client.callback.handler.classse asigna un valor no válido.
Nuevas características
La compatibilidad con lectores de estado tiene disponibilidad general: la compatibilidad con la lectura de información de estado para las consultas de Structured Streaming ahora está disponible con carácter general en el proceso sin servidor. Consulte Leer información de estado de Structured Streaming.
La degradación del protocolo de tabla delta está disponible con protección de puntos de comprobación:
DROP FEATUREestá disponible con carácter general para quitar las características de la tabla de Delta Lake y cambiar el protocolo de tabla. De manera predeterminada,DROP FEATUREahora crea puntos de control protegidos para una experiencia de degradación más optimizada y simplificada que no requiere ningún tiempo de espera o truncamiento del historial. Consulte Eliminar una característica de tabla de Delta Lake y degradar el protocolo de tabla.Escritura de scripts SQL de procedimientos basados en ANSI SQL/PSM (versión preliminar pública): ahora puede usar funcionalidades de scripting basadas en ANSI SQL/PSM para escribir lógica de procedimientos con SQL, incluidas instrucciones de flujo de control, variables locales y control de excepciones. Consulte Scripting de SQL.
Intercalación predeterminada de nivel de tabla y vista: ahora puede especificar una intercalación predeterminada para tablas y vistas. Esto simplifica la creación de tablas y vistas en las que todas o la mayoría de las columnas comparten la misma intercalación. Consulte Intercalación.
Nuevas funciones H3: se han agregado tres nuevas funciones H3: h3_try_coverash3, h3_try_coverash3string y h3_try_tessellateaswkb.
Modificar varias columnas de tabla en una ALTER TABLE instrucción: ahora puede modificar varias columnas en una sola
ALTER TABLEinstrucción. Ver ALTER TABLE ... COLUMN cláusula.
Versión 16.2
13 de marzo de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 16.2.
Cambios de comportamiento
En Delta Sharing, el historial de tablas está habilitado de forma predeterminada: los recursos compartidos creados con el comando
ALTER SHARE <share> ADD TABLE <table>SQL ahora tienen habilitado el uso compartido de historial (WITH HISTORY) de forma predeterminada. Consulte ALTER SHARE.Las instrucciones SQL de credenciales devuelven un error cuando hay un error de coincidencia de tipo de credencial: ahora, si el tipo de credencial especificado en una instrucción SQL de administración de credenciales no coincide con el tipo del argumento de credencial, se devuelve un error y la instrucción no se ejecuta.
Nuevas características
Use las funciones
timestampdiffytimestampadden expresiones de columna generadas Ahora puede usar las funciones timestampdiff y timestampadd en expresiones de columna generadas de Delta Lake. Consulte Columnas generadas por Delta Lake.Actualizar a
DESCRIBE TABLEdevuelve metadatos como JSON estructurados: ahora puede usar el comandoDESCRIBE TABLE AS JSONpara devolver metadatos de tabla como un documento JSON. La salida JSON está más estructurada que el informe legible predeterminado y se puede usar para interpretar el esquema de una tabla mediante programación. Para más información, consulte DESCRIBE TABLE AS JSON.Intercalaciones que no distinguen espacios en blanco finales: ahora sin servidor admite intercalaciones que no distinguen espacios en blanco finales. Por ejemplo, estas clasificaciones tratan
'Hello'y'Hello 'como iguales. Para obtener más información, consulte Intercalación RTRIM.
Corrección de errores
-
Procesamiento incremental mejorado de clonación: esta versión incluye una corrección para un caso perimetral en el que un incremental
CLONEpodría volver a copiar archivos ya copiados de una tabla de origen a una tabla de destino. Consulte Clonación de una tabla en Azure Databricks.
Configuración de alta memoria disponible en cuadernos sin servidor (versión preliminar pública)
7 de febrero de 2025
Ahora puede configurar un tamaño de memoria mayor para las cargas de trabajo de cuadernos de proceso sin servidor. Esta configuración se puede aplicar a cargas de trabajo de cuadernos interactivas y programadas.
El uso sin servidor con memoria alta tiene una tasa de emisión de DBU mayor que la memoria estándar.
Para obtener más información, consulte Uso de un proceso sin servidor de memoria elevada.
Versión 16.1
5 de febrero de 2025
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 16.0 y Databricks Runtime 16.1.
Nuevas características
-
Compatibilidad de Avro con el esquema recursivo: ahora puede usar la opción
recursiveFieldMaxDepthcon la funciónfrom_avroy el origen de datosavro. Esta opción establece la profundidad máxima para la recursividad del esquema en el origen de datos Avro. Consulte Lectura y escritura de datos de Avro en streaming. - Compatibilidad expandida para el Registro de Esquemas Confluent para Avro: Serverless ahora admite la referencia de esquema Avro con el Registro de Esquemas Confluent. Consulte Autenticación en un registro de esquema de Confluent externo.
-
Forzar la reagrupación en tablas con agrupación líquida en clústeres: Ahora puede usar la sintaxis de
OPTIMIZE FULLpara forzar la reagrupación de todos los registros de una tabla con habilitada la agrupación líquida en clústeres. Vea Reagrupación en clústeres forzada para todos los registros. - Las API de Delta para Python ahora admiten columnas de identidad: ahora puede usar las API de Delta para Python para crear tablas con columnas de identidad. Consulte Uso de columnas de identidad en Delta Lake.
-
Crear tablas en clúster líquido durante las escrituras de streaming: Ahora puede usar
clusterBypara habilitar la agrupación en clústeres líquidos al crear nuevas tablas con escrituras de Structured Streaming. Consulte Habilitación de clústeres líquidos. - Compatibilidad con la cláusula FULL de OPTIMIZE: Proceso sin servidor ahora admite la cláusula OPTIMIZEFULL. Esta cláusula optimiza todos los registros de una tabla que usa la agrupación en clústeres líquidos, incluidos los datos que podrían haberse agrupado previamente.
-
Compatibilidad con la especificación de opciones WITH en INSERT y referencia de tabla: el proceso sin servidor ahora admite una especificación de opciones para las referencias de tabla y los nombres de tabla de una instrucción
INSERTque se puede usar para controlar el comportamiento de los orígenes de datos. -
Nuevas funciones SQL: Las siguientes funciones SQL ahora están disponibles en proceso sin servidor:
- try_url_decode es una versión tolerante a errores de url_decode.
-
zeroifnull devuelve 0 si la expresión de entrada de la función
zeroifnull()esNULL. -
nullifzero devuelve
NULLsi la entrada es 0 o su entrada si no es 0. - dayname(expr) devuelve el acrónimo inglés de tres letras del día de la semana para la fecha especificada.
- uniform(expr1, expr2 [,seed]) devuelve un valor aleatorio con valores independientes y distribuidos de forma idéntica dentro del intervalo de números especificado.
-
randstr(length) devuelve una cadena aleatoria de
lengthcaracteres alfanuméricos.
-
Habilitar la evolución automática del esquema al combinar datos en una tabla Delta: Se ha añadido soporte para el miembro
withSchemaEvolution()de la claseDeltaMergeBuilder. UsewithSchemaEvolution()para habilitar la evolución automática del esquema durante las operaciones deMERGE. Por ejemplo,mergeBuilder.whenMatched(...).withSchemaEvolution().execute()}}. -
Compatibilidad con intercalaciones en Apache Spark está en versión preliminar pública: ahora puede asignar intercalaciones que no distinguen mayúsculas de minúsculas y de idioma a
STRINGcolumnas y expresiones. Estas intercalaciones se usan en comparaciones de cadenas, ordenación, operaciones de agrupación y muchas funciones de cadena. Consulte Intercalación. - Compatibilidad con intercalaciones en Delta Lake está en versión preliminar pública: ahora puede definir intercalaciones para columnas al crear o modificar una tabla Delta. Consulte Compatibilidad de las intercalaciones con Delta Lake.
-
LITEmodo de vacío está en versión preliminar pública: Ahora puede usarVACUUM table_name LITEpara realizar una operación de vacío de peso más ligero que aprovecha los metadatos en el registro de transacciones delta. Consulte Modo completo frente a modo ligero y VACUUM. -
Compatibilidad para parametrizar la cláusula
USE CATALOG with IDENTIFIER: ahora se admite la cláusula IDENTIFIER para la instrucción USE CATALOG. Con esta soporte, puede parametrizar el catálogo actual en función de una variable de cadena o un marcador de parámetro. - Compatibilidad de COMMENT ONCOLUMN con tablas y vistas: la instrucción COMMENT ON ahora admite la modificación de comentarios para las columnas de vista y tabla.
- Invocación de parámetros con nombre para más funciones: Las funciones siguientes admiten la invocación de parámetros con nombre:
-
El parámetro
SYNC METADATApara el comando REPAIR TABLE se admite con el metastore de Hive: ahora puede usar el parámetroSYNC METADATAcon el comandoREPAIR TABLEpara actualizar los metadatos de una tabla administrada del Metastore de Hive. Consulte REPAIR TABLE. -
Integridad de datos mejorada para lotes comprimidos de Apache Arrow: Para proteger aún más frente a los daños en los datos, cada lote de flecha comprimida
LZ4ahora incluye el contenido deLZ4y las sumas de comprobación de bloqueo. Consulte la descripción del formato de bloque LZ4 .
-
Controlador JDBC integrado de Oracle: Computación sin servidor ahora tiene el controlador JDBC de Oracle integrado. Si usa un JAR del controlador JDBC cargado por el usuario a través de
DriverManager, debe reescribir scripts para usar explícitamente el JAR personalizado. De lo contrario, se usa el controlador integrado. Este controlador solo es compatible con la Federación Lakehouse. Para otros casos de uso, debe proporcionar su propio controlador. -
Errores más detallados para las tablas Delta a las que se accede con rutas de acceso: ya está disponible una nueva experiencia de mensaje de error para las tablas Delta a las que se accede mediante rutas de acceso. Todas las excepciones se reenvían ahora al usuario. La excepción
DELTA_MISSING_DELTA_TABLEahora está reservada para cuando los archivos subyacentes no se pueden leer como una tabla Delta.
Cambios de comportamiento
- Cambio importante: RStudio hospedado ha llegado al fin de vida útil: Con esta versión, RStudio Server hospedado por Databricks ha llegado al fin de vida útil y no está disponible en ninguna área de trabajo de Azure Databricks que se ejecute en cómputo sin servidor. Para obtener más información y ver una lista de alternativas a RStudio, consulte Conexión a un servidor de RStudio hospedado en Databricks.
Cambio importante: eliminación de la compatibilidad con el cambio de tipo
byte,short,intylonga tipos más amplios: Para garantizar un comportamiento coherente en las tablas Delta y Apache Iceberg, los siguientes cambios de tipo de datos ya no se pueden aplicar a las tablas con la característica de ampliación de tipos habilitada.-
byte,short,intylongadecimal. -
byte,shortyintadouble.
-
Análisis correcto de patrones regex con negación en la agrupación de caracteres anidados: esta versión incluye un cambio para admitir el análisis correcto de patrones regex con negación en la agrupación de caracteres anidados. Por ejemplo,
[^[abc]]se analizará como "cualquier carácter que no sea uno de 'abc'".Además, el comportamiento de Photon no era coherente con Spark para las clases de caracteres anidadas. Los patrones regex que contienen clases de caracteres anidados ya no usarán Photon y, en su lugar, usarán Spark. Una clase de caracteres anidada es cualquier patrón que contenga corchetes cuadrados dentro de corchetes cuadrados, como
[[a-c][1-3]].Mejorar la detección de coincidencias duplicadas en Delta Lake
MERGE:MERGEahora considera las condiciones especificadas en la cláusulaWHEN MATCHED. Consulte Upsert en una tabla de Delta Lake mediante combinación.La funcionalidad de
addArtifact()ahora es coherente entre los tipos de proceso: cuando se usaaddArtifact(archive = True)para agregar una dependencia al proceso sin servidor, el archivo se desempaqueta automáticamente.
Corrección de errores
- Los desplazamientos de zona horaria ahora incluyen segundos cuando se serializan en CSV, JSON y XML: Las marcas de tiempo con desplazamientos de zona horaria que incluían segundos (comunes para las marcas de tiempo anteriores a 1900) omitían los segundos cuando se serializaban a CSV, JSON y XML. El formateador de marca de tiempo predeterminado se ha corregido y ahora devuelve los valores de desplazamiento correctos para estas marcas de tiempo.
Otros cambios
-
Se han renombrado los códigos de error para el origen de
cloudFilesStructured Streaming: Los siguientes códigos de error han sido renombrados:-
_LEGACY_ERROR_TEMP_DBR_0143se renombra aCF_INCORRECT_STREAM_USAGE. -
_LEGACY_ERROR_TEMP_DBR_0260se renombra aCF_INCORRECT_BATCH_USAGE.
-
Versión 15.4
28 de octubre de 2024
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 15.4
Nuevas características
-
Funciones de validación UTF-8: esta versión presenta las siguientes funciones para validar cadenas UTF-8:
- is_valid_utf8 comprobó si una cadena es una cadena UTF-8 válida.
- make_valid_utf8 convierte una cadena UTF-8 potencialmente no válida en una cadena UTF-8 válida mediante caracteres de sustitución.
- validate_utf8 genera un error si la entrada no es una cadena UTF-8 válida.
-
try_validate_utf8 devuelve
NULLsi la entrada no es una cadena UTF-8 válida.
- Habilitar UniForm Iceberg con ALTER TABLE: Ahora puede habilitar UniForm Iceberg en tablas existentes sin volver a escribir archivos de datos. Consulte Habilitación de lecturas de Iceberg en una tabla existente.
-
try_url_decode función: esta versión presenta la función try_url_decode , que descodifica una cadena con codificación URL. Si la cadena no tiene el formato correcto, la función devuelve
NULLen lugar de generar un error. -
Opcionalmente, permita que el optimizador dependa de restricciones de clave externa no aplicadas: para mejorar el rendimiento de las consultas, ahora puede especificar la
RELYpalabra clave enFOREIGN KEYrestricciones al crear o MODIFICAR una tabla. -
Ejecuciones de trabajos en paralelo para sobrescrituras selectivas: Las sobrescrituras selectivas que utilizan
replaceWhereahora ejecutan trabajos que eliminan datos e insertan nuevos datos en paralelo, mejorando el rendimiento de las consultas y el aprovechamiento del clúster. -
Rendimiento mejorado para el feed de datos de cambios con sobrescrituras selectivas: las sobrescrituras selectivas que utilizan
replaceWhereen tablas con feed de datos de cambios ya no escriben archivos de datos de cambios separados para los datos insertados. Estas operaciones usan una columna oculta_change_typepresente en los archivos de datos Parquet subyacentes para registrar cambios sin amplificación de escritura. -
Latencia de consulta mejorada para el
COPY INTOcomando: esta versión incluye un cambio que mejora la latencia de consulta para elCOPY INTOcomando. Esta mejora se implementa haciendo asincrónica la carga de estado por parte del almacén de estados de RocksDB. Con este cambio, debería notar una mejora en los tiempos de inicio de las consultas con estados grandes, como las consultas con un gran número de archivos ya ingeridos. -
Compatibilidad con la eliminación de la función de restricciones de comprobación en tablas: ahora puede quitar la
checkConstraintsfunción de tabla de una tabla Delta medianteALTER TABLE table_name DROP FEATURE checkConstraints. Consulte Deshabilitación de las restricciones de comprobación.
Cambios de comportamiento
Cambio de asociación de esquema para vistas: Cuando los tipos de datos de la consulta subyacente de una vista cambian respecto a los usados cuando se creó la vista por primera vez, Databricks ya no genera errores en las referencias a la vista cuando no es posible realizar una conversión segura.
En su lugar, la vista compensa mediante reglas de conversión normales siempre que sea posible. Este cambio permite a Databricks tolerar cambios de esquema de tabla más fácilmente.
No permitir la aceptación de sintaxis no documentada
!fuera de la lógica booleanaNOT: Databricks ya no aceptará el uso de!como sinónimo deNOTfuera de la lógica booleana. Este cambio reduce la confusión, se alinea con el Estándar SQL y hace que SQL sea más portátil. Por ejemplo:CREATE ... IF ! EXISTS, IS ! NULL,! NULLpropiedad de columna o campo,! INy ! BETWEEN debe reemplazarse por:CREATE ... IF NOT EXISTS,IS NOT NULL,NOT NULLpropiedad de columna o campo,NOT INyNOT BETWEEN.El operador de prefijo booleano
!(por ejemplo!is_mgr, o!(true AND false)) no se ve afectado por este cambio.Rechazar partes no documentadas y no procesadas de la sintaxis de definición de columnas en vistas: Databricks admite CREATE VIEW con columnas con nombre y comentarios de columna.
La especificación de tipos de columnas, restricciones
NOT NULLoDEFAULTse ha tolerado en la sintaxis sin tener ningún efecto. Databricks quitará esta tolerancia de sintaxis. Si lo hace, se reduce la confusión, se alinea con el Estándar SQL y permite mejoras futuras.Control coherente de errores para la descodificación de Base64 en Spark y Photon: esta versión cambia cómo Photon controla los errores de descodificación de Base64 para que coincidan con el control de Spark de estos errores. Antes de estos cambios, la ruta de generación de código de Photon y Spark a veces no generaba excepciones de análisis sintáctico, mientras que la ejecución interpretada por Spark las levantaba correctamente
IllegalArgumentExceptionoConversionInvalidInputError. Esta actualización garantiza que Photon genere de forma coherente las mismas excepciones que Spark durante los errores de descodificación de Base64, lo que proporciona un control de errores más predecible y confiable.La acción de agregar una restricción en una columna no válida ahora devuelve la clase de error UNRESOLVED_COLUMN.WITH_SUGGESTION: Para proporcionar mensajes de error más útiles, en Databricks Runtime 15.3 y versiones posteriores, una instrucción que incluye una restricción que hace referencia a un nombre de columna no válido devuelve la clase de error UNRESOLVED_COLUMN.WITH_SUGGESTION. Anteriormente, se devolvía un
INTERNAL_ERROR.
El JDK se actualiza de JDK 8 a JDK 17
15 de agosto de 2024
El cálculo sin servidor para cuadernos y flujos de trabajo se ha migrado del Kit de desarrollo de Java (JDK) 8 a JDK 17 en el lado del servidor. Esta actualización incluye los siguientes cambios de comportamiento:
Análisis correcto de patrones regex con negación en la agrupación de caracteres anidados: con esta actualización, Azure Databricks ahora admite el análisis correcto de patrones regex con negación en la agrupación de caracteres anidados. Por ejemplo,
[^[abc]]se analizará como "cualquier carácter que no sea uno de 'abc'".Además, el comportamiento de Photon no era coherente con Spark para las clases de caracteres anidadas. Los patrones regex que contienen clases de caracteres anidados ya no usarán Photon y, en su lugar, usarán Spark. Una clase de caracteres anidada es cualquier patrón que contenga corchetes cuadrados dentro de corchetes cuadrados, como
[[a-c][1-3]].
Versión 15.1
23 de julio de 2024
Esta versión de proceso sin servidor se corresponde aproximadamente con Databricks Runtime 15.1
Nuevas características
Compatibilidad con la cláusula star (*) en la sintaxis WHERE: ahora puede usar la cláusula star (*) en la sintaxis WHERE para hacer referencia a todas las columnas de la lista de SELECT.
Por ejemplo, SELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*).
Changes
Recuperación de errores mejorada para el análisis de JSON: el analizador de JSON usado para from_json() y las expresiones de ruta de acceso de JSON ahora se recuperan más rápido de una sintaxis con formato incorrecto, lo cual da lugar a una pérdida de datos inferior.
Al encontrar una sintaxis JSON con formato incorrecto en un campo de estructura, un valor de matriz, una clave de mapa o un valor de mapa, el analizador de JSON ahora devolverá NULL solo para el campo, la clave o el elemento no legibles. Los campos, claves o elementos posteriores se analizarán correctamente. Antes de este cambio, el analizador de JSON abandonaba el análisis de la matriz, la estructura o el mapa y devolvía NULL para el contenido restante.
Versión 14.3
15 de abril de 2024
Esta es la versión inicial de proceso sin servidor. Esta versión se corresponde aproximadamente con Databricks Runtime 14.3 con algunas modificaciones que quitan la compatibilidad con algunas características no sin servidor y heredadas.
Parámetros de configuración de Spark admitidos
Para automatizar la configuración de Spark en un proceso sin servidor, Azure Databricks ha quitado la compatibilidad para establecer manualmente la mayoría de las configuraciones de Spark. Para ver una lista de los parámetros de configuración de Spark admitidos, consulte Configuración de propiedades de Spark para cuadernos y trabajos sin servidor.
Las ejecuciones de tareas en computación serverless fallarán si establece una configuración de Spark no compatible.
Las funciones input_file están obsoletas.
Las funciones input_file_name(), input_file_block_length(), y input_file_block_start() han quedado en desuso. No se recomienda usar estas funciones.
En su lugar, use la columna de metadatos de archivo para recuperar información de metadatos de archivo.
Cambios de comportamiento
La versión de proceso sin servidor 2024.15 incluye los siguientes cambios de comportamiento:
-
Corrección de errores de unhex(hexStr): Cuando se usa la función
unhex(hexStr), hexStr siempre se rellena a un byte completo. Anteriormente, la función unhex omitió el primer byte medio. Por ejemplo:unhex('ABC')ahora generax'0ABC'en lugar dex'BC'. - Los alias de columna generados automáticamente ahora son estables: Cuando se hace referencia al resultado de una expresión sin un alias de columna especificado por el usuario, este alias generado automáticamente ahora será estable. El nuevo algoritmo puede dar lugar a un cambio en los nombres generados automáticamente previamente usados en características como las vistas materializadas.
-
Los recorridos de tablas con campos de tipo
CHARahora se rellenan siempre: tablas Delta, determinadas tablas JDBC y orígenes de datos externos almacenan datos CHAR en un formulario no rellenado. Al leer, Azure Databricks ahora rellenará los datos con espacios a la longitud declarada para garantizar la semántica correcta. -
Las conversiones de BIGINT/DECIMAL a TIMESTAMP producen una excepción para los valores desbordados: Azure Databricks permite la conversión de BIGINT y DECIMAL a TIMESTAMP mediante el tratamiento del valor como el número de segundos de la época de Unix. Anteriormente, Azure Databricks devolvería valores desbordados, pero ahora produce una excepción en casos de desbordamiento. Use
try_castpara devolver NULL en lugar de una excepción. -
Se ha mejorado la ejecución de UDF de PySpark para que coincida con el comportamiento exacto de la ejecución de UDF en el proceso dedicado: Se han realizado los siguientes cambios:
- Las UDF con un tipo de valor devuelto de cadena ya no convierten implícitamente valores que no son de cadena en cadenas. Anteriormente, las UDF con un tipo devuelto
straplicarían un contenedorstr(..)al resultado independientemente del tipo de datos real del valor devuelto. - Las UDF con tipos
timestampdevueltos ya no aplican implícitamente una conversión de zona horaria a las marcas de tiempo.
- Las UDF con un tipo de valor devuelto de cadena ya no convierten implícitamente valores que no son de cadena en cadenas. Anteriormente, las UDF con un tipo devuelto