Introdução à Engenharia de Dados
Vincent Vankrunkelsven
Data Engineer @ DataCamp
Base das ferramentas modernas de dados
Ideia


Gerenciando uma alfaiataria
Meta: 100 camisas
Vários alfaiates juntos > melhor alfaiate sozinho
Módulo de memória RAM:

Sobrecarga por comunicação
Lentidão paralela:


multiprocessing.Pool
from multiprocessing import Pooldef take_mean_age(year_and_group): year, group = year_and_group return pd.DataFrame({"Age": group["Age"].mean()}, index=[year])with Pool(4) as p: results = p.map(take_mean_age, athlete_events.groupby("Year"))result_df = pd.concat(results)
dask
import dask.dataframe as dd# Particionar o dataframe em 4 athlete_events_dask = dd.from_pandas(athlete_events, npartitions = 4)# Rodar computações paralelas em cada partição result_df = athlete_events_dask.groupby('Year').Age.mean().compute()
Introdução à Engenharia de Dados