第四课_Spark应用经验与程序调优

第四课_Spark应用经验与程序调优的相关问题都在下面进行提问回帖
1、大家在这个帖子上回复自己想要提的问题。(相同的问题,请点赞表示自己关注这个问题,不用重复提问)
2、提出的问题,老师在直播课的最后30分钟统一回答。
3、课后会整理出参考答案,给每个问题回帖。
第四课课后调查问卷:
https://wj.qq.com/s/1289910/d41d
或扫描二维码
微信图片_20170418221834.jpg

 

掂吾掂

赞同来自:

目前课程会讲HBase相关的东西嘛?另外想请教一下,如何优化hadoop的吞吐量?

刚被兽

赞同来自:

spark 中的lazy的用法 ,case的用法 申请资源的时候发现很多代码带有 
sys.addShutdownHook(new Thread {
    override def run(): Unit = {
      println("begin to shutdown hbase connection")
      if (connection != null) {
        connection.close()
      }
      println("finished shutdown hbase connection")
    }
  }.start)
类似的方法,这个方法到底是什么作用,一般是什么时候调用呢

dragonwjc

赞同来自:

请问老师,是所有的action操作都会引起shuffle吗?是所有的reduce操作(包括reduce和reduceBy...等函数)都会引起shuffle吗?还是说shuffle只是针对transformation操作而言的?

tl_oni

赞同来自:

请老师给一个spark 2.1.0+mongodb 3.2.x+maven的demo工程,谢谢!!! 网上的版本低,调不通!

hero_naicha

赞同来自:

spark需要配置动态资源配置吗?如果启动动态资源配置,需要制定executor的数量以及核数吗?

tl_oni

赞同来自:

老师能讲一下spark与mongo合作的原理吗?

hero_naicha

赞同来自:

spark-submit 如何分发jar包, 分发到hdfs? 还是local path?

贰怪兽lyn

赞同来自:

请老师进一步阐述一下Sorted shuffle为什么比优化合并中间文件后的Hash-based shuffle性能更好?谢谢。 我的理解: 假设一个shuffle有1000个map任务和1000个reduce任务, Shuffle write阶段: 优化合并中间文件后的Hash-based shuffle中,map端一个core会生成reduce任务个即1000个中间文件,只是追加内容,且不用排序; Sorted shuffle中,map端一个core会生成map任务个即1000个中间数据文件,追加内容,但需要排序,并生成索引文件。   Shuffle read阶段: 两种方式的成本差不多,或者说Sorted shuffle的成本略高,因为有个根据索引文件定位内容再读取,而hashed shuffle是直接从确定的文件中取。   这么看来Hash-based shuffle没有排序和生产索引文件的成本,理论是比Sorted shuffle性能更好的,但为什么现在抛弃了优化后的Hash-based shuffle?

会飞的象

赞同来自:

老师,我想请教下:在实际的企业生产系统中,需要批量运行spark。除了thrift server连接spark自己调度,spark自身有没有成熟的任务管理框架?

流年12411 - 90后it

赞同来自:

spark2.x可以打成assembly.jar吗?

930523

赞同来自:

怎么把文本文件以列式存储?

流年12411 - 90后it

赞同来自:

hdfs上的文件适合大批量使用parquet格式吗,有什么坏处吗,parquet文件要如何生成,如何转换,有没有快速转换的方法,sqoop抽取成parquet文件时,是不是有许多bug。董老师能讲解一下吗

陆仲达

赞同来自:

从kafka中通过Spark Streaming读取数据来在线分析,能够借助parquet格式还做优化吗,parquet只能用于文件吗?

马明睿

赞同来自:

董老师,有详细的文章介绍capacity schedule的源码的吗,自己想改一个调度器应该从什么地方入手...

930523

赞同来自:

1,spark.speculation在哪个配置文件里面修改?   2,在key上加随机数应该在key的前面加(随机数+key)还是在key的后面加(key+随机数),它们有什么区别?          

逍遥feng

赞同来自:

请问下两个问题 1、对于尽量避免shuffle的使用,能否举一些常用的例子说明? 2、对于必须用到  sortbykey算子  会产生shuffle  这个用其他的替代么?用什么替代呢?

贰怪兽lyn

赞同来自:

刚才讲的按url为key聚合处理,baidu的url很多,需要在url+随机数作为新的key,这里是不是还需要 (url+随机数)% 你期望的partition数?

frmark

赞同来自:

假设node有10个,如果分配100个executor,并且每个executor的memory都是1G,核有1个,加起来的总数超过node的资源的话,yarn是怎么处理的

逍遥feng

赞同来自:

关于spark shuffle调优  能不能推荐几篇好的文章或者资料

贰怪兽lyn

赞同来自:

Spark源代码的阅读思路是什么?记得第三节课由于时间关系没有讲。。

allen_cdh

赞同来自:

1. 关于ShuffleRead,mapreduce用的是sort-based,spark1.x是hash-based,spark2.x是sort-based,这么理解对吗? 2. PPT里写的reduce中的group key的方式 mapreduce是sorted,spark是hashmap sorted这两个有什么区别? 3. 我用的cdh升级可以在cm里直接下载,cm升级只能卸了重装,有更好的办法吗?

探照灯儿

赞同来自:

压缩的方案能稍微具体讲一下吗?是先压缩整个文件再放hdfs吗?那样一个压缩包被拆成多个blocks了,程序还能正确解压? 然后是在程序中怎么处理被压缩的文件呢?

run_psw

赞同来自:

maven 打包 scala 编写的spark程序用那个插件?

heming621

赞同来自:

请问有没有替换groupBy算子的类似方案?  类似cartesian算子的源代码可以在哪里查看?

贰怪兽lyn

赞同来自:

添加阿里云的maven库在sbt下如何设置呢?

nj_alan

赞同来自:

老师你的最后调优案例,我的理解是这个标签表是存在关系型数据库的,然后加载到spark内存中。、 我不是很明白 对于关系数据库中的数据如何使用文件压缩和 列式存储呢。   

要回复问题请先登录注册