从 AWS S3 存储桶读取缓慢



我正在尝试从 s3 存储桶读取带有熊猫的文件,而无需将文件下载到磁盘。我尝试为此使用 boto3 作为

import boto3
s3 = boto3.client('s3')
obj = s3.get_object(Bucket='bucket_name', Key="key")
read_file = io.BytesIO(obj['Body'].read())
pd.read_csv(read_file)

我也尝试过 s3fs 作为

import s3fs
import pandas as pd
fs = s3fs.S3FileSystem(anon=False)
with fs.open('bucket_name/path/to/file.csv', 'rb') as f:
df = pd.read_csv(f)`

问题是读取文件需要很长时间。读取3MB文件大约需要3分钟。应该是这样的吗?如果是,那么有没有更快的方法来做同样的事情。如果不是,任何建议可能导致问题的原因?

谢谢!

基于对类似问题的回答,您可能需要考虑从哪个区域读取存储桶,而不是从何处读取存储桶。可能是一个简单的更改(假设您可以控制存储桶位置(,可以大大提高性能。

最新更新