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.
Predictive I/O es un conjunto de optimizaciones de Azure Databricks que aceleran la lectura y actualización de datos:
- Las lecturas aceleradas aceleran consultas selectivas que de otro modo escanearían muchos más datos de los que devuelven.
- Las actualizaciones aceleradas reducen los datos reescritos cuando una actualización, eliminación o fusión cambia solo unas pocas filas en un archivo.
La E/S predictiva es exclusiva del motor Photon en Azure Databricks. Consulte ¿Qué es Photon?
Cuando se aplica la E/S predictiva
La E/S predictiva se ejecuta automáticamente. No lo activas para consultas individuales. Para beneficiarse:
- Ejecuta consultas en almacenes serverless o SQL profesionales, o en clústeres habilitados con Photon. Ver Usar E/S predictiva para acelerar las lecturas.
- Activa vectores de eliminación en tablas con operaciones frecuentes de
DELETE,MERGEoUPDATEpara obtener actualizaciones aceleradas. Consulte Utilizar la E/S predictiva para acelerar las actualizaciones.
La E/S predictiva también reemplaza los índices de filtro Bloom. Vea índices de filtro Bloom (en desuso).
Utilizar la E/S predictiva para acelerar las lecturas
La E/S predictiva se utiliza para acelerar el rendimiento de la exploración y el filtrado de datos para todas las operaciones en los tipos de proceso compatibles.
Importante
Las lecturas de E/S predictivas son compatibles con los tipos sin servidor y pro de almacenes de SQL, y los clústeres acelerados por Photon que ejecutan Databricks Runtime 11.3 LTS y versiones posteriores.
La E/S predictiva mejora el rendimiento del escaneo aplicando técnicas de aprendizaje profundo a:
- Determina el patrón de acceso más eficiente para leer los datos y escanea solo los datos que realmente se necesitan.
- Eliminar la descodificación de columnas y filas que no son necesarias para generar los resultados de la consulta.
- Calcular las probabilidades de los criterios de búsqueda en consultas selectivas que coincidan con una fila. A medida que se ejecutan las consultas, la E/S Predictiva utiliza estas probabilidades para anticipar dónde ocurre la siguiente fila coincidente y leer solo esos datos desde el almacenamiento en la nube.
Utilizar la E/S predictiva para acelerar las actualizaciones
La E/S predictiva para actualizaciones se utiliza automáticamente para todas las tablas que tienen vectores de eliminación habilitados en estos tipos de cálculo con Photon habilitado:
- Almacenes de SQL sin servidor.
- Almacenes Pro SQL.
- Clústeres que ejecutan Databricks Runtime 14.0 y versiones posteriores.
Nota:
La compatibilidad con E/S predictiva para actualizaciones está presente en Databricks Runtime 12.2 LTS y versiones posteriores, pero Databricks recomienda usar 14.0 y versiones posteriores para mejorar el rendimiento.
Consulte Vectores de eliminación en Databricks.
Importante
Una configuración de administrador del espacio de trabajo controla si los vectores de eliminación se habilitan automáticamente para las nuevas tablas Delta Lake. Vea Habilitación automática de vectores de eliminación.
Puede habilitar la compatibilidad con los vectores de eliminación en una tabla de Delta Lake estableciendo una propiedad de tabla de Delta Lake. Se activan vectores de eliminación durante la creación de la tabla o se altera una tabla existente, por ejemplo:
CREATE TABLE <table-name> [options] TBLPROPERTIES ('delta.enableDeletionVectors' = true);
ALTER TABLE <table-name> SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);
Advertencia
Al habilitar los vectores de borrado, se actualiza la versión del protocolo de la tabla. Tras la actualización, la tabla no es legible para los clientes Delta Lake que no soportan vectores de borrado. Consulte Compatibilidad y protocolos de características de Delta Lake.
Para obtener una lista de clientes que admiten vectores de eliminación, consulte Compatibilidad de cliente.
Tanto Databricks Runtime 14.1 como en las versiones posteriores puede eliminar la característica de tabla de vectores de eliminación para habilitar la compatibilidad con otros clientes Delta. Consulte Eliminar una característica de tabla de Delta Lake y degradar el protocolo de tabla.
La E/S predictiva aprovecha vectores de eliminación para acelerar las actualizaciones reduciendo la frecuencia de reescrituras completas de archivos durante la modificación de datos en tablas Delta Lake. La E/S predictiva optimiza las operaciones DELETE, MERGE y UPDATE.
En lugar de reescribir todos los registros de un archivo de datos cuando se actualiza o elimina cualquier registro, la E/S predictiva utiliza vectores de eliminación para indicar que los registros se han eliminado de los archivos de datos de destino. Los archivos de datos complementarios se utilizan para indicar las actualizaciones.
Las lecturas posteriores en la tabla resuelven el estado actual de la tabla aplicando los cambios indicados a la versión más reciente de la tabla.
Importante
Las actualizaciones de E/S predictivas comparten todas las limitaciones con los vectores de eliminación. En Databricks Runtime 12.2 LTS y superiores, se aplican estas limitaciones:
- OpenSharing no se admite en tablas con vectores de eliminación habilitados.
- No se puede generar un archivo de manifiesto para una tabla con vectores de eliminación presentes. Ejecute
REORG TABLE ... APPLY (PURGE)y asegúrese de que no se están ejecutando operaciones de escritura simultáneas para generar un manifiesto. - No se puede generar incrementalmente archivos de manifiesto para una tabla con vectores de eliminación activados.