Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Spark中的scala读取S3中的拼花文件时性能较慢_Scala_Amazon S3_Apache Spark - Fatal编程技术网

使用Spark中的scala读取S3中的拼花文件时性能较慢

使用Spark中的scala读取S3中的拼花文件时性能较慢,scala,amazon-s3,apache-spark,Scala,Amazon S3,Apache Spark,我将scala中的数据帧中的分区文件保存在s3存储桶中 data\u frame.write.mode(“append”).partitionBy(“date”).parquet(“s3n://…”) 当我阅读这个分区文件时,我正在试验非常慢的性能,我只是在做一个简单的分组 val load_df=sqlContext.read.parquet(s“s3n://…”).cache() 我也尝试 load\u df.registerTempTable(“数据帧”) 有什么建议吗,我做错了什么?这取

我将scala中的数据帧中的分区文件保存在s3存储桶中

data\u frame.write.mode(“append”).partitionBy(“date”).parquet(“s3n://…”)

当我阅读这个分区文件时,我正在试验非常慢的性能,我只是在做一个简单的分组

val load_df=sqlContext.read.parquet(s“s3n://…”).cache()

我也尝试
load\u df.registerTempTable(“数据帧”)


有什么建议吗,我做错了什么?

这取决于你所说的“非常慢的性能”是什么意思

如果您的
date
分区中有太多文件,那么读取这些文件将需要一些时间


尽量减少分区的粒度。

您应该使用S3A驱动程序(可能很简单,只需将url协议更改为S3A://,或者您可能需要一些额外的类路径,以便在其中包含hadoop aws和aws sdk JAR),以获得更好的性能。

我相信append可以生成许多文件和目录,您能避免吗?