与 Athena 查询相比,Pyathena 超级慢

roo*_*m13 7 python amazon-web-services amazon-athena pyathena amazon-sagemaker

我从 AWS Athena 控制台运行查询需要 10 秒。使用PyAthena从Sagemaker运行相同的查询需要 155 秒。PyAthena 是否会减慢速度,或者从 Athena 到 sagemaker 的数据传输是否如此耗时?

我可以做些什么来加快速度?

roo*_*m13 18

只需找出一种提高查询的方法:

在我尝试之前:

import pandas as pd
from pyathena import connect

conn = connect(s3_staging_dir=STAGIN_DIR,
             region_name=REGION)
pd.read_sql(QUERY, conn)
# takes 160s
Run Code Online (Sandbox Code Playgroud)

发现使用PandasCursor而不是连接要快得多

import pandas as pd
pyathena import connect
from pyathena.pandas.cursor import PandasCursor

cursor = connect(s3_staging_dir=STAGIN_DIR,
                 region_name=REGION,
                 cursor_class=PandasCursor).cursor()
df = cursor.execute(QUERY).as_pandas()
# takes 12s
Run Code Online (Sandbox Code Playgroud)

参考: https: //github.com/laughingman7743/PyAthena/issues/46