社区
Spark
帖子详情
spark sql 执行完毕后,落地小文件太多
qq_36584537
2017-12-15 05:46:11
执行 insert overwrite 语句,产生了200个小文件。 试过配置参数:spark.sql.shuffle.partitions=1, 但这个导致所有reduce阶段均只有一个并行度,影响了执行效率。
大家,有没有什么办法能解决这个问题呢?
...全文
3419
7
打赏
收藏
spark sql 执行完毕后,落地小文件太多
执行 insert overwrite 语句,产生了200个小文件。 试过配置参数:spark.sql.shuffle.partitions=1, 但这个导致所有reduce阶段均只有一个并行度,影响了执行效率。 大家,有没有什么办法能解决这个问题呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
不住在隔壁的老王
2019-07-29
打赏
举报
回复
并行度决定了产生多少个文件, 要么在文件数量和并行度之间找个平衡, 要么尝试一下adaptive
怎么全部重名了
2019-07-11
打赏
举报
回复
coalesce(1) 望采纳
mamba10
2019-06-19
打赏
举报
回复
对计算完成之后的rdd,再coalesce一下
LinkSe7en
2019-05-31
打赏
举报
回复
如果每个文件都小于HDFS BlockSize,那还是有调整的必要,否则没必要在写入前reparation。 因为一个是会增加一次shuffle,二个如果数据集已经排序,shuffle会把顺序打乱。 所以如果真有调整的必要,建议是在写入前一个步骤插入reparation(n)。 例如 rdd.map(xxx).filter(xxx).sortBy(xxx).write(xxx) 在sortBy前进行reparation
郭小白0
2019-05-31
打赏
举报
回复
你不妨在进行写入之前进行coalesce(num)这样试试,我试了一下,至少小数据量还是可以的,像这样:
specialDaysInMall.toDF("name", "age", "address").coalesce(3)
.registerTempTable("inMall")
hqx.sql("insert overwrite table t1 select name,age,address from inMall")
这样之后,在使用sql进行insert或者overwrite形式进行写入hive表,这样结果应该就只会生成3个parquet文件,不妨一试
书断华
2018-01-19
打赏
举报
回复
200是Spark sql的默认并行度。别人都嫌弃他太慢了要调高并行度,你居然要降低它的并行度,你如果真的嫌弃他太多了,你可以适当降低它的并行度,调节参数 spark.sql.shuffle.partitions
guostong
2017-12-18
打赏
举报
回复
repartition(1)
Spark
SQL
在100TB上的自适应
执行
实践(转载)
Spark
SQL
是Apache
Spark
最广泛使用的一个组件,它提供了非常友好的接口来分布式处理结构化数据,在很多应用领域都有成功的生产实践,但是在超大规模集群和数据集上,
Spark
SQL
仍然遇到不少易用性和可扩展性的挑战。为了应对这些挑战,英特尔大数据技术团队和百度大数据基础架构部工程师在
Spark
社区版本的基础上,改进并实现了自适应
执行
引擎。本文首先讨论
Spark
SQL
在大规模数据集...
Spark
SQL
在100TB上的自适应
执行
实践
作者:汪愈舟 俞育才 郭晨钊 程浩(英特尔),李元健(百度)责编:钱曙光(qianshg@csdn.net)
Spark
SQL
是Apache
Spark
最广泛使用的一个组件,它提供了非常友好的接口来分布式处理结构化数据,在很多应用领域都有成功的生产实践,但是在超大规模集群和数据集上,
Spark
SQL
仍然遇到不少易用性和可扩展性的挑战。为了应对这些挑战,英特尔大数据技术团队和百度大数据
Spark
SQL
在100TB上的自适应
执行
实践---
Spark
Adaptive Execution
github地址:https://github.com/Intel-bigdata/
spark
-adaptive github中中文文档链接(原文链接):https://mp.weixin.qq.com/s?__biz=MzA4Mzc0NjkwNA==&mid=2650784030&idx=1&sn=2c61e166b535199ee53e579a5092ff80&...
[转]
Spark
SQL
2.X 在100TB上的Adaptive execution(自适应
执行
)实践
Spark
SQL
是Apache
Spark
最广泛使用的一个组件,它提供了非常友好的接口来分布式处理结构化数据,在很多应用领域都有成功的生产实践,但是在超大规模集群和数据集上,
Spark
SQL
仍然遇到不少易用性和可扩展性的挑战。为了应对这些挑战,英特尔大数据技术团队和百度大数据基础架构部工程师在
Spark
社区版本的基础上,改进并实现了自适应
执行
引擎。本文首先讨论
Spark
SQL
在大...
Spark
核心计算与
Spark
SQL
概念、API、优化(基于Java)
Spark
学习笔记 一、
Spark
基本概念 1、架构初析 1-1、
Spark
的基本架构组成
Spark
应用程序由一个驱动器进程(driver)和一组
执行
器(worker)进程组成。 其中驱动器(driver)的作用是:维护
Spark
应用程序的相关信息;回应用户的程序或输入;分析任务并分发给各个
执行
器去处理。
执行
器(worder)的作用是负责
执行
驱动器分配的任务,并将状态反馈给驱动器,其
执行
的进程叫做Executor。 在
Spark
应用程序运行的过程中,对于资源的分配由Cluster Manag
Spark
1,270
社区成员
1,170
社区内容
发帖
与我相关
我的任务
Spark
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
复制链接
扫一扫
分享
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章