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 esta página se describe la optimización predictiva, que ejecuta automáticamente operaciones de mantenimiento para tablas administradas de Unity Catalog en Azure Databricks.
Nota
La optimización predictiva está habilitada de forma predeterminada para las cuentas creadas el 11 de noviembre de 2024 o después. Databricks comenzó a habilitar las cuentas existentes el 7 de mayo de 2025. Este lanzamiento es gradual y se espera que finalice en abril 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 las operaciones de mantenimiento y pone esas operaciones 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 |
Desencadena la actualización incremental de las estadísticas para mejorar el rendimiento de las consultas. Ver ANALYZE TABLE ... ESTADÍSTICAS DE PROCESO. |
Nota
OPTIMIZE no se ejecuta cuando se ejecuta ZORDER mediante 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 ANALYZE, OPTIMIZE y VACUUM mediante computación sin servidor para trabajos. La cuenta se factura por este proceso 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 o un esquema. 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 o esquema.
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 |
| Esquema | Propietario del esquema |
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.
Habilitación o deshabilitación de la optimización predictiva para un catálogo o esquema
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 o esquema para invalidar este comportamiento.
Nota
Puede deshabilitar la optimización predictiva en el nivel de catálogo o esquema 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 las tablas de esos objetos.
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;
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
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 receptores de Delta Sharing
- Tablas externas