如何使用dask从S3读取csv文件并提及我的访问密钥和秘密?



我正在尝试使用dask从S3读取CSV文件,但我得到以下错误。如果我在这里做错了什么,有人能纠正我吗?

aws_access_key_id = 'xxxx'
aws_secret_access_key = 'xxxx'
df = dd.read_csv('s3://{bucket}/{file_key.csv}', storage_options = {'key': aws_access_key_id, 'secret': aws_secret_access_key})

错误提示:

TypeError: sequence item 0: expected str instance, tuple found

您可以使用boto3创建具有访问密钥ID和秘密访问密钥的S3连接。

import boto3
import io
import dask as dd
s3_client = boto3.client('s3')
response = s3_client.get_object(Bucket,s3_key)
file = response["Body"].read()
df = dd.read_csv(io.BytesIO(file))

注意:在环境中导出密钥使用os.env.

我使用boto3,这类似于使用pandas从S3读取csv。这对我来说很有效!

import boto3
import dask
import dask.dataframe as dd
df = dd.read_csv('s3://*****.csv', storage_options = {'key': 'XXXX', 'secret': 'XXXX'}, assume_missing=True)

相关内容

  • 没有找到相关文章

最新更新