Tabelas gerenciadas e nao gerenciadas

Tabelas gerenciadas

Uma tabela gerenciada e controlada pelo metastore do Spark/Hive. O sistema gerencia os metadados e tambem o local fisico onde os dados sao armazenados.

Esse tipo de tabela e comum quando o ambiente possui um catalogo/metastore centralizado e o Spark controla completamente o ciclo de vida da tabela.

Tabelas nao gerenciadas

Uma tabela nao gerenciada, tambem chamada de externa, possui um caminho fisico definido pelo usuario.

O metastore registra os metadados, mas os dados ficam em um local externo, como um bucket S3 ou MinIO.

Exemplo usado no trabalho:

CREATE TABLE produtos
USING delta
LOCATION 's3a://bronze/produtos'

Nesse caso, a tabela aponta diretamente para o caminho Delta no MinIO.

Aplicacao neste trabalho

As tabelas do bucket bronze sao tratadas como externas porque o caminho e informado explicitamente com LOCATION.

Isso e adequado para uma arquitetura lakehouse, pois os dados ficam no object storage e podem ser acessados pelo Spark usando o formato Delta Lake.

A vantagem do Delta Lake nesse contexto e adicionar transacoes, historico e time travel sobre arquivos armazenados no MinIO.