sqlalchemy太慢了,我做错了什么?

时间:2017-09-21 22:52:28

标签: python mysql pandas sqlalchemy

当我使用MAMP和mysql执行此命令时:

SELECT * FROM cont_bar

它只需要(总共264,278,查询耗时0.0007秒。)但是,当我尝试将此表加载到pandas data_frame时,它变得非常慢。我尝试了两种方法。

第一种方法

import pandas as pd
from sqlalchemy import create_engine

engine = create_engine("mysql://{}:{}@{}:{}/{}".format(DB_USER, DB_PASSWORD, DB_HOST, DB_PORT, FUTURE_DAILY_BAR_DB))

conn = engine.connect()
resoverall = conn.execute("SELECT * FROM cont_bar")
full_pd = pd.DataFrame(resoverall.fetchall())
full_pd.columns = resoverall.keys()

这个需要20秒。

第二种方法

engine = create_engine("mysql://{}:{}@{}:{}/{}".format(DB_USER, DB_PASSWORD, DB_HOST, DB_PORT, FUTURE_DAILY_BAR_DB))
conn = engine.connect()
full_pd_2 = pd.read_sql("SELECT * FROM cont_bar", conn)

这个需要37秒。我觉得这很慢。它是最好的sqlalchemy /任何其他基于mysql的python包可以做到的吗?

0 个答案:

没有答案