我正在尝试从pyodbc
中提取大型数据集。我下面的代码可以正常工作,但是它是串行的,因此速度很慢。我想使其能够异步启动多个IO调用。我看到许多使用asyncio
的示例-但找不到我可以使用fetchmany
的任何东西。我感谢任何建议!我尝试使用asyncio
进行池化,但是无法使其正常工作。
conn = pyodbc.connect('DSN=Denodo Interfaces')
cursor = conn.cursor()
strng = strng.replace('myWellName', well_name)
cursor.execute(strng)
cols = [column[0] for column in cursor.description]
mylist=[]
while True:
rows = cursor.fetchmany(10000)
if not rows:
break
df = pd.DataFrame([tuple(t) for t in rows], columns = cols)
mylist.append(df)
df = pd.concat(mylist, axis=0).reset_index(drop=True)