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.
La optimización predictiva ejecuta automáticamente OPTIMIZE, VACUUM y ANALYZE en tablas administradas por Unity Catalog (Delta Lake e Iceberg) en Azure Databricks, lo que elimina el mantenimiento manual y el tiempo dedicado a hacer seguimiento de los problemas de rendimiento.
Nota
La optimización predictiva está habilitada de forma predeterminada para las cuentas creadas el 11 de noviembre de 2024 o después. Databricks habilita las cuentas existentes con una implementación gradual. Se espera que este lanzamiento se complete en agosto de 2026. Para comprobar si la cuenta ya está habilitada, consulte Comprobación de si la optimización predictiva está habilitada.
Con la optimización predictiva habilitada, Databricks realiza automáticamente lo siguiente:
- Identifica las tablas que se beneficiarían de operaciones de mantenimiento y las pone en cola para su ejecución.
- Recopila estadísticas cuando los datos se escriben en una tabla administrada.
Esto elimina las ejecuciones de mantenimiento innecesarias y la carga del seguimiento y la solución de problemas del rendimiento manualmente.
Databricks recomienda la optimización predictiva para todas las tablas administradas de Unity Catalog. Por ejemplo, la agrupación automática en clústeres líquidos usa la optimización inteligente del diseño de datos en función de los patrones de uso de datos. Consulte Uso de clústeres líquidos para tablas.
¿Qué operaciones ejecuta la optimización predictiva?
La optimización predictiva ejecuta las siguientes operaciones en tablas administradas de Unity Catalog:
| Operación | Descripción |
|---|---|
OPTIMIZE |
Desencadena la agrupación en clústeres incrementales para tablas habilitadas. Consulte Uso de clústeres líquidos para tablas. Mejora el rendimiento de las consultas porque optimiza el tamaño de los archivos. Consulte Optimización del diseño del archivo de datos. |
VACUUM |
Reduce los costos de almacenamiento porque elimina los archivos de datos a los que ya no hace referencia la tabla. Consulte Eliminar archivos de datos sin usar con el comando vacuum. |
ANALYZE |
Examina la tabla y recopila estadísticas para mejorar el rendimiento de las consultas. Ver ANALYZE TABLE ... ESTADÍSTICAS DE PROCESO. Para quitar las estadísticas recopiladas por optimización predictiva, consulte ANALYZE TABLE ... DROP STATISTICS. |
Nota
OPTIMIZE no se ejecuta ZORDER cuando se ejecuta mediante la optimización predictiva. En las tablas que usan el orden Z, la optimización predictiva omite los archivos ordenados por Z.
Si la agrupación automática en clústeres líquidos está habilitada, la optimización predictiva puede seleccionar nuevas claves de agrupación en clústeres antes de agrupar datos en clústeres. Consulte Agrupación automática de líquidos.
Advertencia
La ventana de retención de VACUUM viene determinada por la delta.deletedFileRetentionDuration propiedad table, que tiene como valor predeterminado 7 días.
VACUUM quita los archivos de datos a los que ya no hace referencia una versión de tabla Delta dentro de esa ventana. Para conservar los datos durante más tiempo (por ejemplo, para admitir viajes prolongados), establezca esta propiedad antes de habilitar la optimización predictiva:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');
Cómputo y facturación
La optimización predictiva ejecuta las operaciones ANALYZE, OPTIMIZE y VACUUM utilizando recursos de proceso sin servidor para los trabajos. Este uso de recursos de proceso se factura a su cuenta mediante una SKU de trabajos sin servidor.
Consulte los precios de los servicios administrados de Databricks. Consulte Seguimiento de la optimización predictiva con tablas del sistema.
Prerrequisitos
Se deben cumplir los siguientes requisitos para usar la optimización predictiva:
- El área de trabajo de Azure Databricks debe estar en el plan Premium de una región admitida.
- Debe usar almacenes de SQL o Databricks Runtime 12.2 LTS o versiones posteriores.
- Solo se admiten tablas administradas por Unity Catalog.
- Si necesita conectividad privada para las cuentas de almacenamiento, configure la conectividad privada sin servidor. Consulte Configuración de la conectividad privada a los recursos de Azure.
Habilitar optimización predictiva
Puede habilitar la optimización predictiva para una cuenta, un catálogo, un esquema o una tabla. Todas las tablas administradas del catálogo de Unity heredan el valor de la cuenta de forma predeterminada. Puede invalidar el valor predeterminado de la cuenta en el nivel de catálogo, esquema o tabla.
Debe tener los siguientes privilegios para habilitar o deshabilitar la optimización predictiva:
| Objeto de Unity Catalog | Privilegio |
|---|---|
| Cuenta | Administrador de la cuenta |
| Catálogo | Propietario del catálogo o un usuario con MANAGE privilegios en el catálogo |
| Esquema | Propietario del esquema o un usuario con MANAGE privilegios en el esquema |
| Tabla | Propietario de la tabla o usuario con MANAGE privilegios en la tabla |
Habilitar o deshabilitar la optimización predictiva para la cuenta
Un administrador de cuenta puede habilitar la optimización predictiva para todos los metastores de una cuenta. Los catálogos y esquemas heredan esta configuración de forma predeterminada, pero puede invalidarlo en cualquier nivel.
- Vaya a la consola de cuentas.
- Vaya a Configuración y, a continuación, habilitación de características.
- Seleccione la opción que desea (por ejemplo, Habilitado) junto a Optimización predictiva.
Nota
- Los metastores de regiones que no admiten la optimización predictiva no están habilitados.
- Deshabilitar la optimización predictiva en el nivel de cuenta no la deshabilita para catálogos o esquemas que lo han habilitado específicamente.
Habilitar o deshabilitar la optimización predictiva para un catálogo, un esquema o una tabla
La optimización predictiva usa un modelo de herencia. Cuando se habilita para un catálogo, los esquemas de ese catálogo heredan la configuración y las tablas de un esquema habilitado también lo heredan. Puede habilitar o deshabilitar explícitamente la optimización predictiva de un catálogo, un esquema o una tabla para invalidar este comportamiento.
Nota
Puede deshabilitar la optimización predictiva en el nivel de catálogo, esquema o tabla antes de habilitarla en el nivel de cuenta. Si la optimización predictiva se habilita más adelante en el nivel de cuenta, permanece bloqueada para los objetos que lo han deshabilitado específicamente.
Use la sintaxis siguiente para habilitar, deshabilitar o restablecer la optimización predictiva para heredar del objeto primario:
ALTER CATALOG [catalog_name] { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER { SCHEMA | DATABASE } schema_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER TABLE table_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
Consulte ALTER TABLE.
Comprobación de si la optimización predictiva está habilitada
El Predictive Optimization campo es una propiedad catalog de Unity que muestra si la optimización predictiva está habilitada. Si la configuración se hereda de un objeto primario, el valor de campo indica esto.
Use la sintaxis siguiente para comprobar el estado:
DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name
Compruebe por qué la optimización predictiva omitió una tabla
En Databricks Runtime 18 y versiones posteriores, después de que la optimización predictiva evalúe una tabla administrada, use la pestaña Historial del Explorador de catálogos para ver por qué se omitió una operación. Los resultados pueden tardar hasta 24 horas en aparecer.
Uso de la pestaña historial en el Explorador de catálogos
Puede ver los motivos de omisión en la pestaña Historial de una tabla en el Explorador de catálogos. En la columna Operación , la etiqueta Auto indica la operación ejecutada y la etiqueta No aplicada indica que se omitió la operación. La etiqueta Auto incluye optimización predictiva y otras operaciones automáticas, como la compactación automática de streaming.
Para ver el motivo de omisión, haga clic en una fila con la etiqueta No aplicada en la columna Operación .
En la tabla siguiente se describen los tipos de operación automática que se muestran en el Explorador de catálogos:
| Operación del Explorador de catálogos | Descripción |
|---|---|
OPTIMIZE |
Compactación de archivos para mejorar el rendimiento de las consultas o clústeres líquidos incrementales |
AUTO LIQUID |
Evaluación o evolución de las claves de agrupación en clústeres líquidos |
VACUUM |
Eliminación de archivos de datos a los que ya no hace referencia la tabla |
Seguimiento de la optimización predictiva con tablas del sistema
Databricks proporciona la tabla system.storage.predictive_optimization_operations_history del sistema para observar las operaciones de optimización predictiva, los costos y el impacto. Consulte Referencia de la tabla del sistema de optimización predictiva.
Mensaje de error de Private Link
Si la tabla del sistema marca las operaciones como erróneas con FAILED: PRIVATE_LINK_SETUP_ERROR, es posible que el vínculo privado sin servidor no esté configurado correctamente. Consulte Configuración de la conectividad privada a los recursos de Azure.
Limitaciones
La optimización predictiva no se ejecuta en los siguientes tipos de tabla:
- Tablas cargadas en un espacio de trabajo como destinatarios de OpenSharing
- Tablas externas