mariadb Maria db使用Airflow MySqlHook进行连接,查询耗时太长且超时

hsvhsicv  于 10个月前  发布在  Mysql
关注(0)|答案(1)|浏览(79)

我使用Airflow MySQLHook在MariaDB中运行以下查询。该表有500万行和15列,运行2小时后超时!
错误消息:
(2013,'查询期间与服务器失去连接')无法回滚; 1009)
我需要根据modified_date获取所有行,modified_date是一个时间戳,我最初尝试过这样做:

select * from comment_table where DATE(modified_date) = '2023-06-01';

字符串
然后我试图通过基于6小时时间戳间隔获取modified_date来将其分块,但它仍然超时,并且仍然运行2小时!

SELECT * FROM comment_table WHERE modified_date between str_to_date('2023-06-01 00:00:00', '%Y-%m-%d %H:%i:%s') AND  str_to_date('2023-06-01 06:00:00', '%Y-%m-%d %H:%i:%s');


这就是整个代码的样子:

hook = MySqlHook("mariadb_conn_id")

with hook.get_conn().cursor() as cursor:

     query = 'select * from comment_table.....'
     df_results = pd.read_sql(query, hook.get_conn())

kknvjkwl

kknvjkwl1#

我通过向modified_date列添加索引来修复我的问题,我只是忘记了...而@UncleCarl关于在查询之前做一个EXPLAIN的建议也让我看到索引是在创建之后添加的。

相关问题