我从 AWS Athena 控制台运行查询,需要 10 秒。从Sagemaker使用PyAthena运行相同的查询需要 155 秒。PyAthena 是在减慢速度,还是从 Athena 到 sagemaker 的数据传输如此耗时?
我能做些什么来加快速度?
我从 AWS Athena 控制台运行查询,需要 10 秒。从Sagemaker使用PyAthena运行相同的查询需要 155 秒。PyAthena 是在减慢速度,还是从 Athena 到 sagemaker 的数据传输如此耗时?
我能做些什么来加快速度?
只需找出一种增强查询的方法:
在我尝试之前:
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
发现使用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