Jednoduše jste vytvořili datový rámec, který je předpisem práce, která má být vykonána, ale neprovedli jste ji. Pro spuštění musíte zavolat .compute()
na výsledku.
Všimněte si, že výstup zde ve skutečnosti není datový rámec, každý oddíl je vyhodnocen jako None
(protože to_sql
nemá žádný výstup), takže může být čistší vyjádřit to pomocí df.to_delayed
, něco jako
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)
Všimněte si také, že to, zda dosáhnete dobrého paralelismu, bude záviset na ovladači databáze a samotném datovém systému.