Po prostu utworzyłeś ramkę danych, która jest zaleceniem pracy do wykonania, ale jej nie wykonałeś. Aby wykonać, musisz wywołać .compute()
na wynik.
Zauważ, że wynik tutaj nie jest tak naprawdę ramką danych, każda partycja ma wartość None
(ponieważ to_sql
nie ma wyjścia), więc może być czystsze wyrażenie tego za pomocą df.to_delayed
, coś w stylu
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)
Pamiętaj też, że to, czy uzyskasz dobry paralelizm, będzie zależeć od sterownika bazy danych i samego systemu danych.