Carregando

Introdução à Engenharia de Dados

Vincent Vankrunkelsven

Data Engineer, DataCamp

Bancos de dados para analytics ou aplicações

Analytics

Ícone representando analytics

  • Consultas agregadas
  • Processamento analítico online (OLAP)

Aplicações

Ícone representando aplicações

  • Muitas transações
  • Processamento de transações online (OLTP)
Introdução à Engenharia de Dados

Orientação a colunas e a linhas

Analytics

  • Orientado a colunas

Exemplo de armazenamento orientado a colunas

  • Consultas em subconjunto de colunas
  • Paralelização

Aplicações

  • Orientado a linhas

Exemplo de armazenamento orientado a linhas

  • Armazenado por registro
  • Inserido por transação
  • Ex.: adicionar cliente é rápido
Introdução à Engenharia de Dados

Bancos de dados MPP

Bancos de dados de processamento massivo paralelo

Diagrama de banco de dados MPP

 

  • Amazon Redshift
  • Azure SQL Data Warehouse
  • Google BigQuery
Introdução à Engenharia de Dados

Um exemplo: Redshift

Carregar de arquivo para formato de armazenamento colunar

# Método .to_parquet() do Pandas
df.to_parquet("s3://path/to/bucket/customer.parquet")
# Método .write.parquet() do PySpark
df.write.parquet("s3://path/to/bucket/customer.parquet")
COPY customer
FROM 's3://path/to/bucket/customer.parquet'
FORMAT as parquet
...
Introdução à Engenharia de Dados

Carregar para PostgreSQL

pandas.to_sql()

# Transformação nos dados
recommendations = transform_find_recommendatins(ratings_df)

# Carregar no banco PostgreSQL
recommendations.to_sql("recommendations",
                       db_engine,
                       schema="store",
                       if_exists="replace")
Introdução à Engenharia de Dados

Vamos praticar!

Introdução à Engenharia de Dados

Preparing Video For Download...