Delta Lake UI

screenshot of Delta Lake UI
flask

[student project] UI to run SQL on Delta Lake tables and visualize the variations of the result among tables versions

Overview

DeltaLakeUI is an innovative web interface designed specifically for running SQL queries on Delta Lake tables. Its minimalist design enhances usability, allowing users to focus on their SQL queries without distractions. One of the standout features of this tool is its ability to visualize the variations in results across different versions of Delta tables, making it invaluable for data analysis and tracking changes over time.

Built on a robust architecture that combines minimal HTML, CSS, and JavaScript, DeltaLakeUI leverages a basic Flask server to handle user interactions and queries. With Spark at its core for querying table versions, DeltaLakeUI ensures fast and efficient data processing. The integration of Pygal for result visualization adds an additional layer of depth, allowing users to understand their data variances intuitively.

Features

  • Minimalist Design: Clean and simple user interface that highlights SQL query input, reducing complexity and enhancing user experience.
  • Version Comparison Visualization: Ability to view and compare query results across different versions of Delta Lake tables for effective version control.
  • SQL Query Input: Users can easily input and execute SQL queries to retrieve relevant data from Delta Lake.
  • Built on Flask: A lightweight framework for the server-side, making it fast and responsive for user commands.
  • Utilizes Spark: Employs Spark for querying, ensuring robust performance even with large datasets.
  • Pygal Integration: Visual representation of query results across table versions, allowing for better data insights and analysis.
  • Interactive Results: Users can interact with the results, providing a dynamic approach to data exploration and versioning context.
flask
Flask

Flask is a lightweight and popular web framework for Python, known for its simplicity and flexibility. It is widely used to build web applications, providing a minimalistic approach to web development with features like routing, templates, and support for extensions.