使用pyspark内核模式从sagemaker读取csv.gz文件



我正在尝试读取pyspark中的压缩csv文件。但我无法在sagemaker的pyspark内核模式下阅读。

当内核是conda-python3(在sagemaker中(时,我可以使用pandas读取相同的文件

我尝试过的:

file1 =  's3://testdata/output1.csv.gz'
file1_df = spark.read.csv(file1, sep='t')

错误消息:

An error was encountered:
An error occurred while calling 104.csv.
: java.io.IOException: com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 7FF77313; S3 Extended Request ID: 

如果我遗漏了什么,请告诉我

遇到错误:调用104.csv时出错。:java.io.io异常:com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3异常:拒绝访问(服务:amazon s3;状态代码:403;错误代码:拒绝访问;请求ID:7FF77313;s3扩展请求ID:

S3还有其他Hadoop连接器。只有S3A由Hadoop项目本身主动维护。Apache的Hadoop的原始s3://客户端。Hadoop中不再包含此项。Apache的Hadoop的s3n:文件系统客户端。此连接器不再可用:用户必须迁移到较新的s3a。

我附上了一份文件供您参考Apache S3连接器

PySpark根据他们提供的文档自动读取gz文件。单击Spark编程指南以获取文档。

file1 =  's3://testdata/output1.csv.gz'
rdd = sc.textFile(file1)
rdd.take(10)

在数据帧中加载文件

df = spark.read.csv(file1) 

最新更新