U hebt eenvoudig een dataframe gemaakt dat een voorschrift is van het uit te voeren werk, maar u hebt het niet uitgevoerd. Om uit te voeren, moet je .compute()
. aanroepen op het resultaat.
Merk op dat de uitvoer hier niet echt een dataframe is, elke partitie evalueert tot None
(omdat to_sql
heeft geen uitvoer), dus het is misschien schoner om dit uit te drukken met df.to_delayed
, zoiets als
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)
Houd er ook rekening mee dat of u een goed parallellisme krijgt, afhangt van het databasestuurprogramma en het gegevenssysteem zelf.