我正在创建Spark会议使用下面的代码片段在python笔记本上AWS EMR集群。
spark = SparkSession.builder \
.config("spark.jars.packages","org.apache.hadoop:hadoop-aws:2.7.0") \
.getOrCreate()
然后从S3存储桶阅读数据,如下所示
df_songs = spark.read.option("recursiveFileLookup","true") \
.json("s3a://mydata/song_data/", schema=song_schema)
它给我错误:
IllegalArgumentException: For input string: "64M"
使用环境:Amazon电子病历服务
1条答案
按热度按时间eeq64g8w1#
Hadoop-AWS
模块增加了对多个云提供商版本3.0
以上的支持。Hadoop从3.0版开始引入了s3 a客户端,以便从s3读取/写入。
Hadoop的“S3 A”客户端可针对Amazon S3对象存储和兼容实施提供高性能IO。
要解决这个问题,我想创建一个像最新版本的Spark示例
从mvn repository中选择了
hadoop-aws
的最新版本3.x
参考:https://hadoop.apache.org/docs/current3/hadoop-aws/tools/hadoop-aws/index.html