Dask 没有像 pandas 这样的 df.to_sql() ,所以我试图复制该功能并使用该map_partitions
方法创建一个 sql 表。这是我的代码:
import dask.dataframe as dd
import pandas as pd
import sqlalchemy_utils as sqla_utils
db_url = 'my_db_url_connection'
conn = sqla.create_engine(db_url)
ddf = dd.read_csv('data/prod.csv')
meta=dict(ddf.dtypes)
ddf.map_partitions(lambda df: df.to_sql('table_name', db_url, if_exists='append',index=True), ddf, meta=meta)
这将返回我的 dask 数据框对象,但是当我查看我的 psql 服务器时,没有新表......这里出了什么问题?
更新 仍然无法让它工作,但由于独立问题。后续问题:重复键值违反唯一约束 - 尝试从 dask 数据帧创建 sql 表时出现 postgres 错误