gpt4 book ai didi

python - MySQL 的 read_sql() 非常慢

转载 作者:行者123 更新时间:2023-12-04 15:04:34 26 4
gpt4 key购买 nike

我将 MySQL 与 pandas 和 sqlalchemy 结合使用。但是,它非常慢。一个简单的查询,因为这个查询需要超过 11 分钟才能在具有 1100 万行的表上完成。什么行动可以改善这种表现?提到的表没有主键,仅由一列索引。

from sqlalchemy import create_engine
import pandas as pd
sql_engine_access = 'mysql+pymysql://root:[password]@localhost')
sql_engine = create_engine(sql_engine_access, echo=False)
script = 'select * from my_database.my_table'
df = pd.read_sql(script, con=self.sql_engine)

最佳答案

虽然可能不是性能缓慢的全部原因,但一个促成因素是 PyMySQL (mysql+pymysql://) 可能比 mysqlclient (mysql+mysqldb://) 在重负载下。在一个非常非正式的测试中(没有多次运行,没有平均,没有服务器重启)我看到了以下结果使用 df.read_sql_query() 对本地 MySQL 数据库:

<表类="s-表"><头>检索到的行数mysql+mysqldb(秒)mysql+pymysql(秒)<正文>1_000_00013.654.02_000_00025.9114.13_000_00038.9171.54_000_00062.8217.05_000_00078.3277.4

chart.png

关于python - MySQL 的 read_sql() 非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66398851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com