Ir al contenido principal
Producto

Actualiza tu Lakehouse: Tu guía para convertir a tablas administradas de Unity Catalog

Convierta de Tablas Externas de UC a Tablas Administradas de UC para Acelerar Consultas y Reducir Costos

por Elizabeth Bowman y Amit Vaswani

• Aprenda a convertir sin problemas tablas externas de Unity Catalog (UC) a tablas administradas de UC minimizando el tiempo de inactividad, manteniendo las configuraciones de tabla y preservando el historial de tablas
• Aumente el rendimiento de las consultas 20 veces, reduzca los costos en más del 50% y desbloquee funciones avanzadas con las tablas administradas de Unity Catalog
• Descubra cómo mantener el control sobre la ubicación física de sus datos, realizar conversiones masivas, manejar reversiones y planificar su migración

El nuevo comando SET MANAGED proporciona un mecanismo sencillo para convertir tablas externas de UC en tablas administradas de UC minimizando el tiempo de inactividad, gestionando escrituras concurrentes, manteniendo las configuraciones de la tabla y, siempre que sea posible, conservando el historial de la tabla. Este artículo comparte las mejores prácticas y proporciona una guía paso a paso para usar este comando, disponible de forma general (GA):

¿Por qué convertir a tablas administradas de UC?

Con Unity Catalog como la fuente de verdad, las tablas administradas desbloquean capacidades únicas que mejoran el rendimiento, la gobernanza y la facilidad de uso, manteniendo la interoperabilidad y la portabilidad.

Las ventajas clave incluyen:

  • Optimizaciones automáticas que pueden aumentar el rendimiento de las consultas hasta 20 veces y reducir los costos de almacenamiento en más del 50 % (más detalles aquí).
  • Gestión de datos simplificada con limpieza automática de datos eliminados para ahorrar costos, así como soporte para UNDROP.
  • Gobernanza mejorada con linaje de datos, controles de acceso detallados y acceso seguro a tablas con supervisión de Unity Catalog sobre todas las lecturas y escrituras.
  • Una base para capacidades futuras como la eliminación automática de filas (Auto-TTL) y la ingesta a nivel de fila (ingesta Zerobus).
  • Interoperabilidad: Las tablas convertidas admiten lecturas desde cualquier cliente de terceros (ver aquí para más detalles).

¿Cómo puede ayudar el comando de conversión SET MANAGED?

El comando SET MANAGED facilita la conversión de tablas externas a administradas

Característica

Beneficio del comando SET MANAGED

Minimizar tiempo de inactividad

Mantenga la tabla en línea y disponible para lecturas usando Databricks Runtime 16.1 o superior, y minimice el tiempo de inactividad a solo unos minutos para escrituras (o, para lecturas en Databricks Runtime 15.4 o inferior).

Conservar identidad

Se conservan el nombre de la tabla, los permisos, las etiquetas y la configuración de todas las tablas, y el historial de la tabla (para tablas Delta).

Gestionar concurrencia

El comando SET MANAGED gestiona de forma segura las escrituras concurrentes que puedan ocurrir durante la conversión.

"Deshacer" como sistema de seguridad

Otro comando llamado UNSET MANAGED permite revertir una tabla convertida a externa de UC dentro de los 14 días, como red de seguridad.

¿Cómo convierto de tablas externas a administradas?

Guía paso a paso para la conversión de un profesional

El comando SET MANAGED hace que la conversión de tablas sea sencilla. En una guía paso a paso, hemos descrito consejos clave para garantizar una transición fluida de tablas externas a administradas.

Paso 1: Seleccionar tablas externas para convertir

Comience seleccionando un par de tablas externas de Unity Catalog para convertir primero a administradas de UC, para familiarizar a su equipo con el proceso, los requisitos previos y los pasos posteriores a la conversión.

Por ejemplo, puede probar este comando primero en un par de tablas que solo son leídas y escritas por clientes de Databricks (consulte la sección "Planificación de un viaje por etapas" más abajo).

Paso 2: Lista de verificación previa al vuelo

Verifique que su ecosistema de lectores y escritores de tablas esté listo para el cambio. Para cada tabla externa de UC seleccionada y sus cargas de trabajo asociadas, querrá:

  1. Actualizar para usar acceso basado en nombre: Verifique sus trabajos, notebooks y consultas para asegurarse de que acceden a la tabla usando su nombre de tres partes (catálogo.esquema.tabla) en lugar de usar acceso basado en ruta (por ejemplo, SELECT * FROM delta.'s3://ruta/a/tabla'). Databricks Labs ha desarrollado herramientas UCX que pueden ayudarlo a encontrar referencias basadas en rutas ejecutando el siguiente comando de Databricks Labs UCX lint-local-code desde una terminal IDE, para analizar el código del directorio de su máquina local (archivos .py o .sql).
    1. test123
    2. La redirección basada en ruta también está disponible para manejar código heredado, si no es posible actualizar al acceso basado en nombre.
  2. Cancelar todos los trabajos de mantenimiento: Para evitar conflictos, asegúrese de que no se estén ejecutando ni programados trabajos OPTIMIZE, ZORDER o CLUSTER BY en la tabla durante el proceso de conversión, si existen (puede verificarlo usando DESCRIBE HISTORY). Después de la conversión, Predictive Optimization gestionará automáticamente los trabajos de optimización.
  3. [Opcional] Actualizar versiones de Databricks Runtime: Idealmente, todos los clústeres de Databricks que lean o escriban en la tabla deberían estar en Databricks Runtime 15.4 LTS o superior para conservar el historial completo de la tabla para tablas Delta. Databricks Runtime 16.1 o superior puede eliminar por completo el tiempo de inactividad del lector.

Paso 3: Ejecutar el comando de conversión

Ejecute la conversión usando el siguiente comando de conversión:

Nota: Para tablas con UniForm habilitado, use SET MANAGED TRUNCATE UNIFORM HISTORY.

Paso 4: Verificar el resultado

Después de que el comando se complete, confirme que la conversión fue exitosa verificando los metadatos de la tabla.

En la salida de este comando, la propiedad “Type” ahora debería mostrarse como “MANAGED”. También puede ver la misma información en la sección “About this table” del Catalog Explorer.

Paso 5: Tareas de mantenimiento posteriores a la conversión

Después de una conversión exitosa, complete estos pasos finales para garantizar una transición fluida:

  • Reinicie los trabajos de lectura o escritura en streaming que usan la tabla si alguno se ha pausado
  • Realice pruebas funcionales ejecutando consultas clave para asegurarse de que todos los lectores y escritores operan según lo esperado en la tabla recién administrada
  • Confirma que la Optimización Predictiva está ahora habilitada para la tabla para empezar a beneficiarte del mantenimiento automatizado (también puedes habilitar CLUSTER AUTOMÁTICO, para clustering líquido automático, o comprobar si se ha habilitado).
  • Planificar un Viaje por Etapas

    Una conversión exitosa de todas las tablas a UC gestionado es un viaje: adoptar un enfoque por fases y planificar con antelación puede ayudar a garantizar una transición fluida:

    1. Convertir Tablas Exclusivas de Databricks: Prioriza la conversión de tablas que solo se leen y escriben desde clientes de Databricks. Una herramienta experimental, Access Insights, puede usarse para ayudar a identificar tablas con solo "lectores y escritores de Databricks" frente a "lectores externos" o "escritores externos".
    2. Convertir Tablas con Herramientas Externas Compatibles: Determina qué tablas son accedidas por herramientas de terceros que también soportan nativamente lecturas desde tablas gestionadas por UC, y convierte estas a continuación. El acceso de terceros seguirá funcionando después de la conversión.
    3. Abordar Casos Complejos al Final: Para tablas accedidas con herramientas heredadas no compatibles, planifica usar soluciones como Modo de Compatibilidad para lecturas. Donde se requieran escrituras de terceros, recrea estas tablas y habilita escrituras a estas tablas gestionadas por UC en Vista Previa.

    Consideraciones Adicionales

    Los siguientes detalles sobre el comando de conversión pueden ser útiles de saber con antelación:

    • Límite de Tiempo de Reversión: Para usar la red de seguridad de reversión, se debe ejecutar UNSET MANAGED en la tabla gestionada por UC dentro de los 14 días posteriores a la conversión; después de eso, los datos externos originales se eliminarán permanentemente para ahorrar costos de almacenamiento.
    • Matices de Viaje en el Tiempo: Actualizar los clientes a la versión 15.4 LTS o superior puede ser útil. Para clústeres que se ejecutan en Databricks Runtime 14.3 LTS o inferior, o si usas el comando UNSET MANAGED para revertir, solo podrás viajar en el tiempo a commits históricos por número de versión después de la conversión, no por marca de tiempo.
    • Tiempo de Inactividad Mínimo para Escritores: El comando está diseñado para minimizar el tiempo de inactividad; los escritores pueden experimentar una breve interrupción (estimada entre 1 y 5 minutos) durante la fase final, cuando la ubicación de la tabla se cambia a la nueva ubicación gestionada.
    • Interrupción Temporal de Delta Sharing: Delta Sharing se interrumpirá temporalmente durante la conversión, pero volverá a funcionar correctamente una vez que el proceso se complete.

    Sugerencia Profesional: Escalado con Conversión Masiva

    Para convertir cientos o miles de tablas externas de Unity Catalog en bloque dentro de un esquema determinado, puedes usar el siguiente script SQL simple.

    Nota: Este script realiza modificaciones en vivo. Se recomienda encarecidamente probarlo exhaustivamente en un entorno de desarrollo antes de ejecutarlo en producción.

    Controlar la Ubicación Física de Tus Datos

    Las tablas gestionadas de Unity Catalog (UC) residen en almacenamiento gestionado por el cliente y son accesibles a través de APIs de catálogo abiertas. Si deseas más control sobre cómo se almacenan físicamente tus datos o segregar tus datos, puedes definir una ubicación de almacenamiento gestionado a nivel de catálogo o esquema; cualquier tabla gestionada nueva creada en ese catálogo o esquema se organizará automáticamente en esa ubicación especificada.

    Para tablas externas preexistentes, puedes establecer una ubicación de almacenamiento gestionado y luego usar el comando SET MANAGED para convertirlas en tablas gestionadas por UC. Durante la conversión, el sistema respeta la ubicación gestionada que has definido, dándote control sobre la disposición física de tus datos en el almacenamiento en la nube. Ponte en contacto con tu equipo de cuentas para acceder a esta función en Vista Previa Privada hoy mismo.

    Convertir de Tablas Externas a Gestionadas Hoy Mismo

    En solo unos pocos meses desde la Vista Previa Pública, cientos de clientes han convertido con éxito miles de tablas con SET MANAGED.

    Todo lo descrito aquí está ahora disponible de forma general (GA); pruébalo hoy mismo y desbloquea el rendimiento, la gobernanza y la simplicidad de las Tablas Gestionadas de Unity Catalog.

    (Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original

    Recibe las últimas publicaciones en tu bandeja de entrada

    Suscríbete a nuestro blog y recibe las últimas publicaciones directamente en tu bandeja de entrada.