我正在尝试使用Pandas线程化多个read_sql_query命令。但是,与仅在单独的笔记本中一次运行每个read_sql命令相比,在一个笔记本中执行线程要慢得多。
我的线程代码是:
SQL_Queries = ["Query 1" , "Query 2" , "Query 3"]
SQL_Results = []
def myfunct(i):
SQL_Results.append(pd.read_sql_query(SQL_Queries[i]))
for i in range(3):
t = Thread(target=myfunct, args=(i,))
t.start()
此过程大约需要2分钟。但是,如果我打开3个IPython笔记本,如下所示:
注释1:pd.read_sql_query("Query 1")
注释2:pd.read_sql_query("Query 2")
注释3:pd.read_sql_query("Query 3")
并同时在每个击键上运行,它们都将在1分钟内完成。关于如何在一个笔记本中实现这种性能的任何想法?