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.
Important
Las tablas administradas por el catálogo de Unity están disponibles con carácter general para las tablas de Delta Lake. En el caso de las tablas de Apache Iceberg, esta característica está en versión preliminar pública y está disponible en Databricks Runtime 16.4 LTS y versiones posteriores.
En esta página se describen las tablas administradas por el Unity Catalog en Delta Lake y Apache Iceberg, el tipo de tabla predeterminado y recomendado en Azure Databricks. Estas tablas están completamente gestionadas y optimizadas por el Unity Catalog, ofreciendo un rendimiento y ventajas operativas, además de menores costes de almacenamiento y cálculo, en comparación con las tablas externas y tablas foráneas, ya que las tablas gestionadas aprenden de tus patrones de lectura y escritura. El catálogo de Unity administra todas las responsabilidades de lectura, escritura, almacenamiento y optimización de las tablas administradas. Consulte Conversión de una tabla externa en una tabla de catálogo de Unity administrada.
Los archivos de datos de las tablas administradas se almacenan en el esquema o catálogo que los contiene. Consulte Especificar una ubicación de almacenamiento administrada en Unity Catalog.
Databricks recomienda usar tablas administradas para aprovechar las ventajas de:
- Se han reducido los costos de almacenamiento y cómputo.
- Rendimiento más rápido de las consultas en todos los tipos de cliente.
- Mantenimiento y optimización automáticas de tablas.
- Protección del acceso para clientes que no son de Databricks a través de API abiertas.
- Compatibilidad con los formatos Delta Lake e Iceberg.
- Actualizaciones automáticas a las características de la plataforma más recientes.
Las tablas administradas admiten la interoperabilidad al permitir el acceso desde clientes Delta Lake e Iceberg. A través de APIs abiertas y la emisión de credenciales, el Catálogo de Unity permite que los motores externos, como Trino, DuckDB, Apache Spark, Daft, y motores integrados en el catálogo REST de Iceberg, como Dremio, accedan a las tablas administradas. En el caso de los clientes externos que no admiten API abiertas, puede usar el Modo de Compatibilidad para leer tablas administradas mediante cualquier cliente Delta Lake o Iceberg. Delta Sharing, un protocolo de código abierto, permite el uso compartido seguro y regulado de datos con asociados y plataformas externos.
Puede trabajar con tablas administradas en todos los lenguajes y productos compatibles con Azure Databricks. Necesita ciertos privilegios para crear, actualizar, eliminar o consultar tablas administradas. Consulte Administración de privilegios en Unity Catalog.
Note
Esta página se centra en las tablas administradas por el catálogo de Unity. Para las tablas administradas en el metastore de Hive heredado, consulte Objetos de base de datos en el metastore de Hive heredado.
¿Por qué usar tablas administradas del catálogo de Unity?
Las tablas administradas por el catálogo de Unity optimizan automáticamente los costos de almacenamiento y las velocidades de consulta mediante tecnologías controladas por IA, como la agrupación automática en clústeres, la compactación del tamaño de archivo y la recopilación de estadísticas inteligentes. Estas tablas simplifican la gestión de datos con características como la limpieza automática de datos y la caché de metadatos, mientras garantizan la interoperabilidad con herramientas de terceros Delta e Iceberg.
Las siguientes características son exclusivas de las tablas administradas del catálogo de Unity y no están disponibles para tablas externas y tablas externas.
| Feature | Benefits | ¿Habilitado de forma predeterminada? | ¿Configurable? |
|---|---|---|---|
| Optimización predictiva | Optimiza automáticamente el diseño de datos y el proceso mediante ia, por lo que no es necesario controlar manualmente las operaciones de las tablas administradas. Databricks recomienda habilitar la optimización predictiva para todas las tablas administradas para reducir los costos de almacenamiento y proceso. La optimización predictiva se ejecuta automáticamente:
|
Sí, para todas las cuentas nuevas creadas el 11 de noviembre de 2024 o después. En el caso de las cuentas actuales, Azure Databricks empieza a implementar la optimización predictiva de forma predeterminada. Consulte Comprobación de si la optimización predictiva está habilitada. |
Sí. Consulte Habilitación de la optimización predictiva. |
| Agrupación automática de líquidos | En el caso de las tablas con optimización predictiva, la habilitación de clústeres líquidos automáticos permite a Azure Databricks seleccionar de forma inteligente las claves de agrupación en clústeres. A medida que cambian los patrones de consulta, Azure Databricks actualiza automáticamente las claves de agrupación en clústeres para mejorar el rendimiento y reducir los costos. | No | Sí. Consulte Habilitación de clústeres líquidos. |
| Almacenamiento en caché de metadatos | El almacenamiento en caché en memoria de los metadatos de transacción mejora el rendimiento de las consultas al minimizar las solicitudes al registro de transacciones almacenado en la nube. Esta característica mejora el rendimiento de las consultas. | Sí | No. El almacenamiento en caché de metadatos siempre está habilitado para las tablas administradas. |
Eliminación automática de archivos después de un DROP TABLE comando |
Si elimina una tabla administrada, Azure Databricks elimina los datos en el almacenamiento en la nube después de 8 días, lo que reduce los costos de almacenamiento. En el caso de las tablas externas, debe ir manualmente al cubo de almacenamiento y eliminar los archivos. | Sí | No. En el caso de las tablas administradas, los archivos siempre se eliminan automáticamente después de 8 días. |
Acceso a datos de Databricks mediante sistemas externos
Las tablas administradas admiten la interoperabilidad al permitir el acceso desde clientes Delta Lake e Iceberg. A través de APIs abiertas y provisión de credenciales, Unity Catalog permite que los motores externos, como Trino, DuckDB, Apache Spark, Daft y motores integrados en el catálogo REST como Iceberg, Dremio y Snowflake, accedan a las tablas administradas. Consulte integraciones para obtener una lista de los motores externos admitidos o compruebe la documentación del motor si no se incluye en esta lista.
Las siguientes API abiertas proporcionan acceso a sistemas externos a las tablas administradas del catálogo de Unity:
- API REST de Unity: proporciona acceso de solo lectura para los clientes Delta a tablas Delta administradas.
- Catálogo REST de Iceberg (IRC): proporciona acceso de lectura y escritura para los clientes de Iceberg a las tablas administradas de Iceberg y acceso de solo lectura a las tablas Delta con lecturas de Iceberg habilitadas (UniForm).
Ambas API admiten la provisión de credenciales, que proporciona credenciales temporales con ámbito que heredan los privilegios del principal de Azure Databricks que los solicita, manteniendo los controles de gobernanza y seguridad.
Además, Delta Sharing es un protocolo de código abierto que permite el acceso seguro y regulado a los datos a asociados y plataformas externos. Puede usar Delta Sharing para conceder a los asociados acceso temporal y de solo lectura.
Todas las lecturas y escrituras en tablas administradas deben usar nombres de tabla y nombres de catálogo y esquema donde existen. Por ejemplo: catalog_name.schema_name.table_name. No se admite el acceso basado en rutas de acceso a las tablas administradas del catálogo de Unity (excepto en modo de compatibilidad) porque omite los controles de acceso del catálogo de Unity e impide que las características de la tabla administrada funcionen correctamente.
Creación de una tabla administrada
Para crear una tabla administrada, debe tener:
-
USE SCHEMAen el esquema primario de la tabla. -
USE CATALOGen el catálogo primario de la tabla. -
CREATE TABLEen el esquema primario de la tabla.
Use la siguiente sintaxis SQL para crear una tabla administrada vacía mediante SQL. Reemplace los valores de marcador de posición:
-
<catalog-name>: nombre de la base de datos que contendrá la tabla. -
<schema-name>: el nombre del esquema que contiene la tabla. -
<table-name>: Un nombre para la tabla. -
<column-specification>: el nombre y el tipo de datos de cada columna.
-- Create a managed Delta table
CREATE TABLE <catalog-name>.<schema-name>.<table-name>
(
<column-specification>
);
-- Create a managed Iceberg table
CREATE TABLE <catalog-name>.<schema-name>.<table-name>
(
<column-specification>
)
USING iceberg;
Para mantener el rendimiento de las lecturas y escrituras, Azure Databricks ejecuta periódicamente operaciones para optimizar los metadatos de la tabla de Iceberg administrados. Esta tarea se realiza mediante computación sin servidor, que tiene MODIFY permisos en la tabla Iceberg. Esta operación solo escribe en los metadatos de la tabla y el proceso únicamente conserva permisos para la tabla mientras dura el trabajo.
Note
Para crear una tabla de Iceberg, especifique USING icebergexplícitamente . De lo contrario, Azure Databricks crea una tabla de Delta Lake de forma predeterminada.
Puede crear tablas administradas a partir de resultados de consulta u operaciones de escritura de DataFrame. En los artículos siguientes se muestran algunos de los muchos patrones que puede usar para crear una tabla administrada en Azure Databricks:
Anulación de una tabla administrada
Para eliminar una tabla administrada, debe tener:
- permiso
MANAGEpara la tabla, o bien debe ser el propietario de la tabla. -
USE SCHEMAen el esquema primario de la tabla. -
USE CATALOGen el catálogo primario de la tabla.
Para anular una tabla administrada, ejecute el siguiente comando de SQL:
DROP TABLE IF EXISTS catalog_name.schema_name.table_name;
Unity Catalog admite el UNDROP TABLE comando para recuperar tablas administradas eliminadas durante 8 días. Después de 8 días, Azure Databricks marca los datos subyacentes para su eliminación del inquilino de su nube y elimina los archivos durante el mantenimiento automatizado de tablas. Consulte UNDROP.