Simplesmente, você criou um dataframe que é uma prescrição do trabalho a ser feito, mas não o executou. Para executar, você precisa chamar
.compute()
no resultado. Observe que a saída aqui não é realmente um dataframe, cada partição é avaliada como
None
(porque to_sql
não tem saída), então pode ser mais limpo expressar isso com df.to_delayed
, algo como dto_sql = dask.delayed(pd.DataFrame.to_sql)
out = [dto_sql(d, 'table_name', db_url, if_exists='append', index=True)
for d in ddf.to_delayed()]
dask.compute(*out)
Observe também que obter um bom paralelismo dependerá do driver do banco de dados e do próprio sistema de dados.