Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 通过Python 3中的SQL炼金术缓慢插入到CloudSQL_Mysql_Python 3.x_Sqlalchemy - Fatal编程技术网

Mysql 通过Python 3中的SQL炼金术缓慢插入到CloudSQL

Mysql 通过Python 3中的SQL炼金术缓慢插入到CloudSQL,mysql,python-3.x,sqlalchemy,Mysql,Python 3.x,Sqlalchemy,我遇到了一个奇怪的问题,我将大约5k条记录发布到localshost MySQL数据库,然后发布到CloudSQL实例。 Localhost insert大约需要5秒钟,而CloudSQL大约需要5分钟,而且我的出站流量看起来大约是12kbps(而且我的互联网速度非常快) 我尝试使用mysqldb和mysql连接器设置连接: alchemy_connection = 'mysql+mysqldb:// alchemy_connection = 'mysql+mysqlconnector://

我遇到了一个奇怪的问题,我将大约5k条记录发布到localshost MySQL数据库,然后发布到CloudSQL实例。 Localhost insert大约需要5秒钟,而CloudSQL大约需要5分钟,而且我的出站流量看起来大约是12kbps(而且我的互联网速度非常快)

我尝试使用mysqldb和mysql连接器设置连接:

alchemy_connection = 'mysql+mysqldb://
alchemy_connection = 'mysql+mysqlconnector://
两人似乎都没有提高速度

需要注意的一点是,我正在使用服务器分配的IP地址,通过白名单上的IP连接到db

需要注意的第二件事:)是我正在使用sqlalchemy的bulkinsert语句


有没有想过是什么导致了这个问题?

不幸的是,我找不到解决这个问题的好办法,其他一些人似乎也遇到过同样的问题

为了避免缓慢的插入,我最终将列表拆分为N个列表。然后启动N个线程(同时,通过线程+队列)向CloudSQL发布

这将使投递速度加快N,但会带来额外的复杂性和故障点


祝大家好运

我还尝试了禁用日志记录+增加实例大小-这没有起到任何作用。看起来对于cloudsql来说,发布1k条记录需要~20秒。对于localhost实例-需要。。。使用云sql代理进行连接也没有任何区别。呜呜呜呜。