Spark 在爱奇艺的应用实践


Spark在爱奇艺的应用实践 孙琦 @ Shanghai Spark Meetup 2014-10 • Spark生态@爱奇艺 • 业务实践 • 问题 & 经验 • 进一步工作 Agenda • 爱奇艺 – 秉承“悦享品质”的品牌理念,提供更多、更好的视频 – 2010年4月上线 – 2013年5月与PPS合并 – 月度独立访问用户4+亿(3月份数据) – 2014年1月以来,日均覆盖、月度覆盖、月度时长以及人均月度 时长一直排名第一 Spark生态@爱奇艺 • 爱奇艺大数据生态 Spark生态@爱奇艺 业务层 NoSQL实时计算批处理 HDFS MapReduce Hive Storm Spark HBaseMesos / OpenStack 云图 搜索 广告 推荐 日志 分析 图谱 …. 日志数据 视频 元数据 抓取数据 其他 数据源 安全 监控 规范 审计 • 爱奇艺Spark生态 Spark生态@爱奇艺 Standalone Mesos YARN 日志 分析 推荐 用户 行为 分析 … Kafka HDFS HBase • 爱奇艺Spark生态 – 版本:从0.7.3开始,0.8.X, 0.9.X, 1.0, 1.1…不断跟踪升级 – 部署环境:虚机 + 物理机 – 部署方式:Standalone、Spark on YARN、Spark on Mesos – Spark组件:通用Spark job, Spark MLlib,Spark Streaming – 语言:Scala & Java & Python Spark生态@爱奇艺 • 日志分析 • 推荐 • 用户行为分析 业务实践 • 日志分析 – 各种日志(用户访问,CDN)的数据分析 业务实践 日志 服务器 日志 服务器 日志 服务器 日志 服务器 Kafka Spark  StreamingSpark • 推荐 – 推荐模型训练 – Spark MLlib Alternating Least Squares(ALS) Algorithm – 输入数据300+G,运行20分钟 – 模型提供给Hadoop,Storm进行批处理和实时数据预测 – Spark on YARN 业务实践 • 用户行为分析 – 用户画像、分类 – iQIYI Logistic Regression (LR) Algorithm – 输入数据100G左右,1400W+ Features – 迭代1000次左右 – 单机运行(20G左右)2小时或更长,Spark集群10分钟左右 – Spark Standalone 业务实践 • Spark on Mesos – Mesos Master 内存泄漏 • Spark on YARN – Memory Overhead陷阱 – 调度问题 • Standalone Spark – Secure HDFS 支持 • Spark MLlib – LR改进 问题 & 经验 • Mesos Master 内存泄漏 – 症状:spark.akka.framesize = 128MB, Mesos Master内存飙 涨,最终crash – 原因:Executor的执行结果会通过statusUpdate传递给Mesos Master,且没有及时清理 Spark on Mesos – 办法: • 降低spark.akka.framesize – 可能会导致Driver卡住,或者OOM • MESOS-1746 • SPARK-3334 Spark on Mesos • Memory Overhead陷阱 – 症状:Executor的内存没达到上限前被kill – 原因:Spark Application使用了非JVM的内存,比如,矩阵计算 的库调用了native library,分配了JVM堆外内存 – 办法:调高spark.yarn.executor.memoryOverhead • 默认384MB,建议1024MB,视情况而定 Spark on YARN • 调度问题 – 症状:当有较多MapReduce job,scheduler调度压力增大的时 候,Spark job会被kill掉 – 原因:YARN AM Containers会被抢占 – 办法:升级YARN集群,或增加如下Patch • YARN-614 • YARN-2074 • YARN-1957 Spark on YARN • Secure HDFS访问支持 – 症状:不能访问开启了Kerberos的Hadoop集群数据 – 原因:Executor启动后,总是创建一个新的UGI – 限制:不支持一个集群多个用户同时运行 Standalone Spark • LR改进优化 – Spark 1.X前的LR采用梯度下降法,收敛很慢 – 用牛顿法重新实现了LR,收敛速度提升10倍 – 可视化的LR任务提交 Spark MLlib • 更多Spark项目上线 • 调研Spark SQL,并应用线上 • 深入对比Spark Streaming和Storm,推动Spark Streaming的更广泛应用 • 统一的数据分析平台研发 进一步工作 • 职位: – 大数据基础架构研发、运维 – 分布式中间件系统开发 • 范围:社招、校招、实习岗位均常年开放 • 联系方式: – sunqi@qiyi.com – QQ:99884153 – 微博:i_孙琦 – 微信:suncheney Join us!?
还剩19页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 8 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf

pdf贡献者

nn34

贡献于2014-12-16

下载需要 8 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf