CCTC2016-AdMaster-Spark的大数据应用实践.pdf

Spark的大数据应用实践 卢亿雷 From AdMaster @johnlya 目录 1 Yarn 上的各种坑 2 Spark ElasticSearch 3 Spark 案例分析 4 Storm or Spark streaming 5 Q A 我们是谁 •  AdMaster : Make a Happy world with Data •  使用的大数据技术: –  Hadoop –  HBase –  MapReduce –  Pig –  Hive –  Spark –  Storm –  ElasticSearch –  Pinot Why On Yarn •  •  MR/Spark/Storm 计算方式众多, On yarn 方便统一协调 •  服务器众多, 方便资源统一控制 •  部门众多, 方便资源统计和成本核算 Why On Yarn •  Yarn 越来越成熟了 •  流式处理的输出, 批量处理的输入/输出, 基本就是 HDFS •  Yarn + Fair Scheduler 我们自己在持续优化调度 –  某些场景下, 集群闲, 但是不调度 –  经常会 “空转” 坑 Yarn •  Cdh 2.6.0-5.5.1 子队列不生效的 bug : 对于子队列名转换的处理, 解析和调用不一致 •  mapreduce.fileoutputcommitter.algorithm.version 2 –  对作业日志进行合并清理, 拖慢运行速度 –  2.6 中新增参数, 默认为 1, 即之前的做法. 设置为 2, 速度可以提升约 30% •  Pig 对 HistoryServer 的依赖 坑 Yarn •  “container 内存限制” 机制各种两难 –  设置太小或不设置, 作业有可能因为内存不足而失败 –  设置太大, 资源浪费 –  不启用, 机器 OOM 坑 Spark on Yarn •  Executor的内存没达到上限前被kill –  spark.yarn.executor.memoryOverhead 384 调⾼ ,默认 ,根据实际需求调⾼ •  MapReduce job scheduler Spark job kill 当有较多 , 调度压⼒增⼤的时候, 会被 掉 –  升级hadoop集群到 2.6 以上版本 •  Executor OOM –  job 增加 的并⾏度 –  ⼤数据集切分成更⼩的数据 –  调整spark.storage.memoryFraction和spark.executor.memory –  设置spark.cleaner.ttl清理元数据 ElasticSearch Spark •  Spark and ES –  ES 简单维度下钻/汇聚/搜索 –  Spark 复杂业务处理 •  Spark on ES –  https://www.elastic.co/products/hadoop –  Write : saveToEs –  Read : val RDD = sc.esRDD(“radio/artists”) // 后面是 index ElasticSearch比较 •  测试条件 •  记录条数分

文档评论(0)

1亿VIP精品文档

相关文档