Simplement, vous avez créé un dataframe qui est une prescription du travail à faire, mais vous ne l'avez pas exécuté. Pour exécuter, vous devez appeler .compute()
sur le résultat.
Notez que la sortie ici n'est pas vraiment une trame de données, chaque partition est évaluée à None
(parce que to_sql
n'a pas de sortie), il pourrait donc être plus propre d'exprimer cela avec df.to_delayed
, quelque chose comme
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)
Notez également que l'obtention d'un bon parallélisme dépendra du pilote de base de données et du système de données lui-même.