GitHunt
AM

amandadimas/spark-delta

Projeto Apache Spark com Delta Lake

Este projeto foi desenvolvido para demonstrar o uso do Apache Spark (PySpark) localmente, gravando e manipulando arquivos no formato Delta Lake também de forma local.

Requisitos

  • Sistema operacional: Linux (recomendado Ubuntu 24.04)
  • Python 3.10 ou superior
  • Gerenciador de pacotes uv
  • Ambiente virtual (venv)
  • JupyterLab

Nota: O uso em ambientes Windows não é recomendado devido à necessidade de configurações adicionais.

Configuração do Ambiente

  1. Clone o repositório:

    git clone https://github.com/amandadimas/spark-delta.git
    cd spark-delta
  2. Inicialize o projeto com o uv:

    uv init
    uv venv
    source .venv/bin/activate
    uv add pyspark==3.5.3 delta-spark==3.2.0 jupyterlab ipykernel

Executando o Notebook

O notebook spark-delta-lake.ipynb contém exemplos de código PySpark para:

  • Instanciar uma sessão Spark com suporte ao Delta Lake
  • Criar e manipular tabelas Delta Lake localmente
  • Executar operações de leitura e escrita

Para executá-lo:

jupyter lab

Abra o notebook spark-delta-lake.ipynb e siga as instruções contidas nele.

Estrutura do Projeto

.
├── assets/                   # Recursos adicionais (imagens, etc.)
├── spark-delta-lake.ipynb    # Notebook principal com exemplos
├── pyproject.toml            # Configurações do projeto Python
├── uv.lock                   # Arquivo de bloqueio do gerenciador uv
├── .gitignore                # Arquivos e pastas ignorados pelo Git
├── .python-version           # Versão do Python utilizada
└── README.md                 # Documentação do projeto

Observações

  • O projeto utiliza o Delta Lake, um framework de armazenamento open-source que permite construir uma arquitetura Lakehouse com engines de computação como Spark, PrestoDB, Flink, Trino e Hive, além de APIs para Scala, Java, Rust, Ruby e Python.

  • Para mais informações sobre o Delta Lake, consulte a documentação oficial.