只有在公开文件后将"anon“参数更改为True时,才能加载数据。
df = dd.read_csv('s3://mybucket/some-big.csv', storage_options = {'anon':False})由于显而易见的原因,不建议这样做。如何安全地从S3加载数据?
发布于 2020-01-06 16:49:29
幕后的Dask使用boto3,所以你可以用boto3支持的所有方式来设置你的密钥,例如,基于角色的导出AWS_PROFILE=xxxx,或者通过你的环境变量显式地导出访问密钥和密钥。我建议不要硬编码你的密钥,至少你会因为一个错误而将你的代码暴露给公众。
$ export AWS_PROFILE=your_aws_cli_profile_name或
https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html
对于s3,您可以使用通配符匹配来获取多个分块文件
import dask.dataframe as dd
# Given N number of csv files located inside s3 read and compute total record len
s3_url = 's3://<bucket_name>/dask-tutorial/data/accounts.*.csv'
df = dd.read_csv(s3_url)
print(df.head())
print(len(df))https://stackoverflow.com/questions/54177687
复制相似问题