Python pandas to_sql()错误-对于准备好的语句,超出了每个会话20 MB的内存限制

Python pandas to_sql()错误-对于准备好的语句,超出了每个会话20 MB的内存限制,python,sql,pandas,azure,Python,Sql,Pandas,Azure,我已经在使用chunksize 50了,我遇到了内存错误。我总共需要上传大约2.5亿条记录,所以如果我使用更小的块大小,我认为它不会在未来十年内完成。关于如何避开这个问题有什么建议吗 数据库=Azure SQL Server final_df.to_sql('table', con=engine, schema='example', index=False, chunksize=50, if_exists='append', dtype={'ID':sqlalchemy.types.VARCHA

我已经在使用chunksize 50了,我遇到了内存错误。我总共需要上传大约2.5亿条记录,所以如果我使用更小的块大小,我认为它不会在未来十年内完成。关于如何避开这个问题有什么建议吗

数据库=Azure SQL Server

final_df.to_sql('table', con=engine, schema='example', index=False, chunksize=50, if_exists='append', dtype={'ID':sqlalchemy.types.VARCHAR(length=255),'MSA_NAME':sqlalchemy.types.VARCHAR(length=255)})

我想提出一个替代方案

您可以将数据导出为CSV,并将其上载到一个Azure存储服务(例如Blob),您可能可以使用AZCopy来实现

然后使用Azure数据工厂将文件复制/导入到Azure SQL


您可以参考类似的讨论。

我通过使用
fast\u executemany=True
method='multi'
-

engine = sqlalchemy.create_engine('mssql+pyodbc:///?odbc_connect=%s' % params, echo=False, connect_args={'autocommit': True}, fast_executemany=True)


您可以添加odbc语句吗?可能更容易将大容量插入与powershell一起使用,特别是因为您需要插入250m记录。源是什么?
final_df.to_sql('table', con=engine, schema='example', index=False, method='multi',  if_exists='append', dtype={'ID':sqlalchemy.types.VARCHAR(length=255),'MSA_NAME':sqlalchemy.types.VARCHAR(length=255)})