- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 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 数据库:
关于python - MySQL 的 read_sql() 非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66398851/
我通过 Pandas 的 read_sql 和外部应用程序 (DbVisualizer) 运行完全相同的查询。 DbVisualizer 返回 206 行,而 pandas 返回 178 行。 我曾尝
我正在尝试做异步等价物 engine = create_engine('sqlite:///./test.db') stmt = session.query(MyTable) data = pd.re
我必须比较两个数据源以查看所有行中的相同记录是否相同。一个数据源来自 Excel 文件,另一个来自 SQL 表。我尝试使用 DataFrame.equals() 就像我过去一样。 然而,这个问题是由于
我们正在使用 pandas read_sql用于检索前端触发的查询结果。为了简化用例,假设用户给出一些参数(表名、子句等),然后我们将其转换为 sql,然后使用 read_sql 执行它。pandas
我有一个数据库接口(interface)类,它从 pandas pd.read_sql 函数返回查询。我想将 pd.read_sql 参数传递给该方法,以便在调用函数时可以使用它,如下所示: impo
我有一个字段月年,格式为 datetime64[ns] 。 如何在 where 子句中使用此字段来获取滚动 12 个月的数据(过去 12 个月的数据)。 以下查询不起作用,但我想要过滤 12 个月数据
我正在遍历 pd.read_sql(query, engine, chunksize=10000) 的结果 我正在使用 engine (sqlalchemy) 设置为 echo=True以便它打印出
我可以访问 MS SQL SERVER 数据库,从中检索数据进行分析。我使用 Mac,因此可以使用 Navicat Essentials for SQL Server 访问数据库。这真的很好用。但是,
我正在尝试使用以下代码通过 python 从 sql 检索数据: query = ("SELECT stuff FROM TABLE WHERE name like %%(this_name)s%")
我试图在两个不同表的比较列之后插入一个标志(匹配/不匹配)。我能够比较两个 mysql 表列但不知道如何插入标志列并获取状态(匹配/不匹配) 下面是一个例子,考虑2个mysql表: 选项卡1: ema
我正在尝试将三个不同 MySQL 表中的几列读取到三个不同的数据帧中。 从数据库中读取并不需要很长时间,但实际上将它们放入数据帧中却相当慢。 start_time = time.time() prin
我有一个数据集 (14gb),我正在尝试使用 chunksize 从 MySQL 中提取数据。但是,我继续收到以下错误: TypeError: read_sql_query() got an unex
我正在使用 pyodbc 和 pandas read_sql 从 Oracle 数据库中提取数据。 当我输入这一行时我没有看到任何错误 df = pd.read_sql(sql_str,cnxn,ch
这是错误还是我做错了什么?我创建了一个 df,将它放在一个 sql 表中,df 和表中有一个带点的列。现在当我从 sql 表中读取 df 时,列名不一样。我写了这段代码是为了让人们可以测试它。 imp
import pandas as pd q = """ select * from tbl where metric = %(my_metric)s ;
我使用 pandas 从 Vertica 数据库读取数据: pd.read_sql(query, self._conn) 但是失败了 UnicodeDecodeError:“utf-8”编解码器无法解
我需要进一步处理 MySQL 查询的结果集作为数据框。 SQL 表包含大约 200 万行和 12 列(数据大小 = 180 MiB)。我正在运行 8 GB 内存的 OS X 10.9。 pandas.
我有一个用户定义的函数,它使用 pymysql 连接到 mysql 数据库,然后查询数据库并将结果读入 Pandas 数据帧。 import pandas as pd import pymysql i
有没有关于如何在 Pandas 中通过 SQL 查询传递参数的示例? 特别是我使用 SQLAlchemy 引擎连接到 PostgreSQL 数据库。到目前为止,我发现以下工作: df = psql.r
我将 MySQL 与 pandas 和 sqlalchemy 结合使用。但是,它非常慢。一个简单的查询,因为这个查询需要超过 11 分钟才能在具有 1100 万行的表上完成。什么行动可以改善这种表现?
我是一名优秀的程序员,十分优秀!