Gestión de Tablas Delta Lake - Databricks.

Ver proyecto en GitHub


Proyecto en GitHub


Descripción general del proyecto

En este proyecto, exploraremos el uso de Delta Lake en Databricks para la gestión eficiente de tablas de datos estructurados. Delta Lake es una tecnología que extiende los Data Lakes tradicionales con características transaccionales ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad), lo cual mejora significativamente la integridad y confiabilidad de los datos en entornos de big data.

Beneficios de Delta Lake

  • Atomicidad y Consistencia: Garantiza que las operaciones sean atómicas y consistentes, evitando corrupción de datos.

  • Aislamiento y Durabilidad: Proporciona aislamiento entre transacciones y asegura que los datos persistan incluso en caso de fallos.

  • Optimizaciones de Lectura y Escritura: Mejora el rendimiento de las operaciones de lectura y escritura en grandes volúmenes de datos.

  • Gestión de Versiones: Permite mantener un historial de versiones de los datos, facilitando la auditoría y el análisis de cambios.

  • Objetivo del Proyecto

    El objetivo de este proyecto es implementar una tabla de ejemplo utilizando Delta Lake en Databricks, aplicando una serie de comandos SQL para crear, consultar y auditar la tabla, así como gestionar su mantenimiento utilizando las funcionalidades avanzadas proporcionadas por Delta Lake. Además, se crearán tablas externas y administradas para identificar las diferencias entre ellas. Las tablas administradas son aquellas donde Databricks gestiona tanto los metadatos como los datos, mientras que las tablas externas permiten al usuario gestionar la ubicación física de los datos, almacenándolos en una ruta específica del sistema de archivos. Cuando se elimina una tabla administrada, tanto los datos como los metadatos se eliminan por defecto. En contraste, al eliminar una tabla externa, solo los metadatos se eliminan por defecto y los datos permanecen en su ubicación original.

    Detalles del Proyecto


    Creación de la Tabla personas


  • Utilizaremos SQL para definir una tabla llamada tb_person que contendrá información básica de personas.

  • Comandos a Implementar


    Creación y Descripción de la Tabla:


  • Utilizaremos comandos SQL para crear la tabla personas y para describir su estructura utilizando DESCRIBE EXTENDED.

  • Inserción de Datos:


  • Insertaremos datos de ejemplo en la tabla personas utilizando el comando INSERT INTO.

  • Consulta de Datos:


  • Realizaremos consultas básicas para mostrar el contenido de la tabla personas utilizando el comando SELECT.

  • Visualización del Almacenamiento Físico:


  • Utilizaremos comandos de Databricks para visualizar el directorio físico donde se almacenan los datos de la tabla personas.

  • Creación de Tabla Externa personas_ext:


  • Crearemos una tabla externa llamada personas_ext que apuntará a una ubicación específica en el sistema de archivos.

  • Historial de Versiones:


  • Exploraremos el historial de versiones de la tabla personas_ext utilizando el comando DESCRIBE HISTORY.

  • Consulta de Datos Históricos:


  • Realizaremos consultas para mostrar datos históricos específicos de la tabla personas_ext utilizando SELECT con VERSION AS OF.

  • Configuración y Ajustes de Delta Lake:


  • Configuraremos propiedades de Delta Lake según sea necesario para deshabilitar la verificación de duración de retención y otras configuraciones.

  • Limpieza de Datos Obsoletos:


  • Aplicaremos la operación VACUUM para eliminar archivos de datos obsoletos y mantener solo los más recientes en la tabla personas_ext.
  • Repositorio del Proyecto en GitHub

    Para obtener más detalles sobre cada uno de los pasos y configuraciones, junto con la documentación completa del proceso, puede visitar el Repositorio del Proyecto en GitHub, el cual contiene todas las fuentes necesarias para desplegar el proyecto.