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
-
Clone o repositório:
git clone https://github.com/amandadimas/spark-delta.git cd spark-delta -
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 labAbra 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.