Просто сте създали рамка от данни, която е предписание за работата, която трябва да се извърши, но не сте я изпълнили. За да изпълните, трябва да извикате .compute()
върху резултата.
Обърнете внимание, че изходът тук всъщност не е рамка с данни, всеки дял се оценява на None
(защото to_sql
няма изход), така че може да е по-чисто да изразите това с df.to_delayed
, нещо като
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)
Също така имайте предвид, че дали получавате добър паралелизъм ще зависи от драйвера на базата данни и самата система за данни.