Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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
加快python运行多个mysql查询的速度_Python_Mysql_Django - Fatal编程技术网

加快python运行多个mysql查询的速度

加快python运行多个mysql查询的速度,python,mysql,django,Python,Mysql,Django,我的python代码生成一个表,其中周作为列,行作为URL访问。要获取每个单元格的数据,需要执行mysql数据库上的查询。代码运行非常慢。我已经向mysql表添加了索引,但这并没有真正起到作用。我认为这是因为我正在使用连接构建html表代码,但即使使用列表和连接也无法固定速度。代码在django(使用额外的数据库连接)和独立python中运行缓慢。任何加快这一进程的帮助都将不胜感激 要从循环调用的查询示例: def get_postcounts(week): pageviews = 0

我的python代码生成一个表,其中周作为列,行作为URL访问。要获取每个单元格的数据,需要执行mysql数据库上的查询。代码运行非常慢。我已经向mysql表添加了索引,但这并没有真正起到作用。我认为这是因为我正在使用连接构建html表代码,但即使使用列表和连接也无法固定速度。代码在django(使用额外的数据库连接)和独立python中运行缓慢。任何加快这一进程的帮助都将不胜感激

要从循环调用的查询示例:

def get_postcounts(week):
    pageviews = 0
    cursor = connections['olap'].cursor()
    sql = "SELECT SUM(F.pageview) AS pageviews FROM fact_coursevisits F INNER JOIN dim_dates  D ON F.Date_Id = D.Id WHERE D.date_week=%d;" % (week)
    row_count = cursor.execute(sql);
    result = cursor.fetchall()
    for row in result:
       if row[0] is not None:
            pageviews = int(row[0])
    cursor.close()
    return pageviews

这可能是因为您正在执行的查询数量(如果您必须经常调用此方法)


我建议在一次查询中查询视图计数和某个时间段内的周数,并读取结果。

这可能是因为您正在执行的查询数量(如果您必须经常调用此方法)


我建议在一次查询中查询视图计数和特定时间段内的周数,并读取结果。

您的sql代码似乎不正确-在哪里和?您是否尝试过优化sql,例如在f.date\u id和d.id上放置索引?。另外,我同意用户1857805的回答——在一个大型查询中使用group by week和Pythonh将其分离出来可能会更快—您正在查询的表有多大?您使用什么数据类型来存储数据?另外,您使用什么样的硬件来运行数据库服务器?您是否尝试过按照答案所建议的做,特别是将所有内容作为一个查询读取,然后用python将其拆分?事实证明,提高速度的好方法是使用数据框工具。使用Pandas,我可以做更多的计算,一切都运行得很快。您的sql代码似乎不正确-在哪里和?您是否尝试过优化sql,例如在f.date\u id和d.id上放置索引?。另外,我同意用户1857805的回答——在一个大型查询中使用group by week和Pythonh将其分离出来可能会更快—您正在查询的表有多大?您使用什么数据类型来存储数据?另外,您使用什么样的硬件来运行数据库服务器?您是否尝试过按照答案所建议的做,特别是将所有内容作为一个查询读取,然后用python将其拆分?事实证明,提高速度的好方法是使用数据框工具。使用Pandas,我可以做更多的计算,一切都运行得很快。您的sql代码似乎不正确-在哪里和?您是否尝试过优化sql,例如在f.date\u id和d.id上放置索引?。另外,我同意用户1857805的回答——在一个大型查询中使用group by week和Pythonh将其分离出来可能会更快—您正在查询的表有多大?您使用什么数据类型来存储数据?另外,您使用什么样的硬件来运行数据库服务器?您是否尝试过按照答案所建议的做,特别是将所有内容作为一个查询读取,然后用python将其拆分?事实证明,提高速度的好方法是使用数据框工具。使用熊猫,我可以做更多的计算,一切都运行得很快。