欢迎来到天天文库
浏览记录
ID:48089374
大小:841.17 KB
页数:31页
时间:2019-11-25
《Spark平台在电信运营商的应用实践.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Spark平台在电信运营商的应用实践亚信大数据平台田毅目录★项目实践分享★基于Spark改造用户标签分析查询平台★基于SparkStreaming改造内容识别处理平台★一些心得分享★如何用好ExternalDataSourceAPI★高效的在SparkStreaming中引用外部数据○基于Spark改造用户标签分析查询平台3○基于Spark改造用户标签分析查询平台•改造前的设计TCL脚本用户数据清洗指标计算标签计算数据探索客户群计算通信数据接口表指标表标签表上网数据SQL数据库4○基于Spark改造用户标签分析查
2、询平台•改造前的问题•1标签数量越来越大,数据库负载过高,扩展成本高•2标签表的列数随着标签数量增加不断增多,部分现场达到2000+,只能通过分表的方式解决,查询时需要Join操作•3标签与指标的计算无法摆脱SQL的约束,无法快速集成机器学习的算法○基于Spark改造用户标签分析查询平台•第一次改造设计:小试牛刀TCL脚本用户数据清洗指标计算标签计算数据探索客户群计算通信数据接口表指标表标签表SparkSQL上网数据HDFS数据库6○基于Spark改造用户标签分析查询平台•改造后的好处•1使用SparkSQL+P
3、arquet的方案,有效保证了查询效率•2原有系统基本不用太大改造•3查询系统具备平行扩展能力•未解决的问题•1标签与指标的计算无法摆脱SQL的约束,无法快速集成机器学习的算法•产生出来的新问题•1增加了从数据库倒出数据,加载到HDFS的额外步骤•2增加了从文本数据转化为Parquet格式的额外步骤○基于Spark改造用户标签分析查询平台•第二次改造设计:大刀阔斧SparkSQL用户数据清洗指标计算标签计算数据探索客户群计算通信数据接口表指标表标签表上网数据SparkSQLHDFS8○基于Spark改造用户标签分
4、析查询平台•改造后的好处•1通过SparkSQL替换掉了原有的数据库,整个系统的扩展性进一步增强•2两套SparkSQL可以根据各自忙闲时的不同,共享整个系统的计算资源•遗留的问题•1没有摆脱标签分析算法对于SQL的依赖•2系统前端仍然依赖ETL系统对数据进行抽取加载•怎么破?○基于Spark改造用户标签分析查询平台•Spark1.3.0发布了•ExternalDatasourceAPI进一步增强•DataFrame提供了丰富多样的数据源支持•DataFrame提供了一整套用于操纵数据的DSL○基于Spark改造
5、用户标签分析查询平台•第三次改造设计:更进一步原有SQL转化为DF的APISparkApplicationsBasedonDF用户指标计算标签计算数据探索客户群计算外部系统ExtDataSource按需抽取数数据表1据指标表标签表数据表2SparkSQLHDFS11○基于Spark改造用户标签分析查询平台•改造后的好处•1终于摆脱了对SQL的依赖,为后续引入复杂算法分析打下基础•2利用ExternalDatasourceAPI可以根据计算需求从源表抽取指定的数据•3基于DF的处理程序代码量仅有原程序的1/10,可
6、读性大大提高•遗留的问题•1如何控制对源数据库的压力问题==>时间窗•2ExtDS的实现对于不同的数据库类型需要进行细致的优化基于SparkStreaming改造内容识别平台内容识别平台——功能介绍产品目标:通过对上网日志的分析还原用户上网时的场景用户上网记录入口识别:APP还是浏览器应用识别:微博,微信,UCURL内容识别:新闻,体育基于SparkStreaming改造内容识别平台改造前的设计MapReduceJobDistributeCache识别规则MapTask后续系统识别规则标签分析上网数据输入目录数据
7、分析输出目录日志查询营销活动基于SparkStreaming改造内容识别平台•改造前的问题•1数据处理延迟较高•2需要频繁加载规则数据到内存•3数据源逐渐变为实时接口基于SparkStreaming改造内容识别平台改造前的设计MR引擎换为SparkStreamingSparkStreaming原有MR的Map处理逻辑迁移到DStream的map规则数据改为通过方法DStream.map(…)广播发布到所有的BroadcastExecutor将原有的HDFS改为Kafka接口识别规则后续系统KafkaKafka标签
8、分析上网数据数据分析inputoutput日志查询topictopic营销活动基于SparkStreaming改造内容识别平台•改造后的好处•1数据分析的代码逻辑几乎没有修改,兼容了原有的HDFS文件接口•2规则数据只需要一次加载,可以长期保存在executor的内存中•3通过kafka+sparkstreaming实现了流式处理的要求•4数据处理延迟从原有的分钟级别降低
此文档下载收益归作者所有