您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据挖掘与识别 > 移动大数据分析-数据库技术大会36
大数据分析在移动互联网的应用陈继东首席数据科学家人人游戏大数据研究中心2013.04邮件:chenjd@gmail.com微博:@大数据皮东主要内容• 大数据分析概述 – 大数据整体框架 – 大数据关键技术和工具 • 移动大数据分析 – 移动大数据应用需求 – 移动大数据特点和挑战 • 案例分析 – 移动广告分析 – 移动应用分析 数据管理发展趋势 TXNOPSDWAppAppAppAppAppAppAppApp数据库时代ACIDTransactionalData大数据时代1.CRUDtoCRAPCreateReadUpdateDeleteCreateReplicateAppendProcess2.ToobigforRDBMSs3.EnormousunstructuredinformationCloudDataTransformbigdataintoactionableIntelligence大数据整体框架分析工具和服务软件平台NetworkComputeStorageandBackupCloudInfrastructure(Virtualized,Scale-out,Secure)基础架构MetaManagerDataProcessingEngineDataAccess&QueryPresentation,collaborationandworkflowBIandDataMiningScale-outDataStorage(ContentRepository,FileSystem)横向扩展和虚拟化存储、网络和服务器大数据关键技术和工具 • 数据收集– 非结构化数据:Chukwa,Flume,FacebookScribe– 结构化数据:Sqoop,Hiho• 数据存储– 分布式文件系统:HadoopHDFS– 大规模并行数据库:Greenplum,Vertica,…– NoSQL:Hbase,MongoDB,Neo4j– 主内存数据库:Redis,VMwareGemfire,SAPHANA• 数据处理(编程模型)– MapReduce:HadoopMapReduce– 大规模并行数据库– BSP:ApacheHama– 流式计算:TwitterStorm,YahooS4– 主内存计算:Spark,Shark,Scuba大数据关键技术和工具 • 数据存取– SQL:Hive– DataFlow:Pig– JAQL• 数据序列化– GoogleProtocolBuffer,Avro,FacebookThrift• 元数据管理和工作流– 协作:Zookeeper– 工作流:Oozie,Cascading• 监控与管理– 集成:IronfanontopofChef,AmazonEMR– 监控管理:HUE,Cacti,Ganglia,Karmasphere大数据关键技术和工具 • 关键技术– 大规模并行数据库– NoSQL/NewSQL– 并行处理引擎(HadoopMapReduce)– 流式计算(Storm,Spark)– 并行数据挖掘和机器学习– 分布式存储/文件系统– 云计算基础架构MapReducevs并行数据库特征 并行数据库 MapReduce 模式支持(scheme) 有 无 索引 有无 编程模型 Declarative声明性(SQL) Imperative(C/C++,Java,…)可以通过Hive和Pig扩展 查询优化 有 无灵活性 无 有容错 粗粒度 细粒度可扩展性 上百个节点 上千个节点• 应用于不同的场景,互为补充MapReducevs并行数据库• 当前并行数据库的问题– 扩展性:需要扩展到上千台节点– 容错性:需要改进容错,更细粒度,更高效率– 灵活性:需要Schemefree的处理,更好适应非结构化数据– 成本:更多开源实现和外围开源工具• MapReduce类方案的问题(Hive) – 性能:当前为次优的实现,增加索引和查询优化– 实时处理能力:实时加载,实时复杂查询能力– 标准的SQL接口:应用迁移,与DW透明访问– 更丰富的外围工具:OLAP工具,自助分析工具NoSQLvsSQL• NoSQL– 高可扩展性和弹性,灵活数据模型,强容错,高可用性(牺牲ACID,单记录事务和最终一致性)– 适用于海量数据定制化存储,高吞吐查询(如全属性选择应用)• SQL– 强大的语义表达及关系表达,查询处理和优化,ACID,强一致性– 扩展性和灵活性差,用于高性能查询和复杂分析SparkvsHadoopMapReduce• 并行流计算框架Spark– 快速流处理,类似MapReduce的并行计算引擎• 与Hadoop的存储API兼容 (HDFS,S3,SequenceFile)• 比HadoopMapReduce快100倍,即使对于磁盘数据也要快2-10倍– 高性能的主内存抽象,通用的执行图,支持快速迭代类查询• Spark的In-memoryRDDcaching,将数据缓存在各个worker的cache中无需IO• Hadoop每次迭代需要IO读写HDFS,迭代之间的数据没有sharedbuffer进行共享– Spark上的SQL查询:Shark=Spark+Hive并行数据挖掘和机器学习 • 海量数据装载和处理– ETL代价大:海量+实时性,非结构化数据转换– 索引和检索代价大,特别是多维数据• 数据质量和挖掘效率– 大数据导致更低的数据质量和挖掘结果质量– 更慢的查询响应时间– 数据丢失问题• 特征工程– 人工特征和自动组合特征– 特征选择和特征构造并行数据挖掘和机器学习 • 并行机器学习的计算模型– 统计查询模型:HadoopMapReduce(Mahout)– 图模型:GoogleGregel,GraphLab– 定制模型处理迭代:HaLoop,Spark,Naiad• 高可扩展,可并行和分布式算法mappermodelreducer(sufficient)statisticsdata移动大数据应用• 移动互联网将成为大数据应用的主战场– 移动大数据核心载体• 智能设备普及 – 高宽带引流大数据• 手机使用3G和Wifi接入互联网– 移动大数据聚集地• Android和iOS成为主流OS– 移动大数据源头和关键节点• 移动互联网入口:搜索,移动浏览器,移动应用/商店,移动广告• 海量的移动应用,对深入分析的需求更强移动大数据应用• 大数据分析的用途– 增强移动用户体验– 移动应用差异化,平台个性化– 数据驱动的移动应用运营推广– 移动设备上的精准营销 • 与传统互联网的区别– 总是在线– 无处不在– 碎片化– 个性化– 社交化移动大数据应用• 移动大数据的特点– 数据的核心节点是人而不再是终端、网页或ID– 数据量更大,维度更高,种类更多更复杂– 更多个性化属性和上下文信息• 如用户地理位置,设备属性– 不受限于浏览器Cookie,数据更稳定长久和准确– 用户行为数据更碎片化,更实时性移动大数据应用• 移动大数据分析的挑战– 数据采集质量• 采集数据延迟及数据补偿• 数据噪音和稀疏性更强– 用户时空行为模式的挖掘和利用• 上下文情境数据更丰富– 跨应用跨平台跨设备多维数据分析• 多维数据的交叉利用与用户隐私 • 用户全局数据打通– 大数据实时处理与深入分析 案例一 移动应用分析• 目标– 理解用户如何与移动应用进行交互• 分析服务– 用户获取,活跃,留存,转换分析– 用户分群分析,行为分析– 断代分析,转换漏斗分析– 跨应用和跨平台分析• 相关公司– Flurry,Localytics,Kontagent,Apsalar– GoogleMobileAPPAnalytics– Talkingdata,Umeng(友盟)案例一 移动应用分析• 用户获取分析– 新用户,活跃用户,一次性用户(one-sessionuser)– 用户属性:设备信息,地理位置,运营商,人口属性 案例一 移动应用分析• 用户活跃和留存分析– 用户日/周/月 留存率– 应用或页面使用时长,使用频率分析 • 用户活跃和留存分析– 用户日/周/月 留存率– 应用或页面使用时长,使用频率分析 案例一 移动应用分析• 用户分群分析– 按人口属性(年龄,性别),兴趣,地理位置,使用情况,留存情况,付费情况等分类 案例一 移动应用分析• 漏斗分析– 自定义事件漏斗:点击-安装-注册-登录-付费– 各个漏斗事件的转换率 案例一 移动应用分析• 数据规模 (以Flurry为例) – 覆盖23万应用,7亿设备– 每天19亿应用会话数(三倍于Twitter的Tweet)– 每月1亿广告对话– 每月3800亿总数据条数,包括唯一事件或用户行为动作– 每天1.5TB,数据总规模为PB级别• 分析方法 – 实时统计分析:count,sum,uniquevisit– 并行数据挖掘:分类,聚类,关联分析,时序分析 案例一 移动应用分析• 大数据平台 – 实时计算和传输:流处理• TwitterStorm,LinkedinKafka,Spark– 并行处理和离线分析:Hadoop• HadoopMapReduce(Almostall)• HadoopHive(Kontagent)– 高性能大数据存取:NoSQL• HadoopHBase(Flurry最大的Hbase集群)• MongoDB(Localytics), Redis实例分析1:移动应用的UV统计• 问题 – 访问量逐渐增加,百万级到千万级到亿级 – UV计算对内存占用越来越大 – 实时性要求越来越高,小时-分钟-秒 • 解决方案及演化 – 单击Java统计程序 • JVM Map优化:日志45G,内存占用7.5G减少到3.5G – Hadoop MapReduce统计 • Cascading统计及优化:日志大于160G,存储在Hadoop 集群,基于MapReduce排序和并行计算 – 基数估计近似UV • Loglog概率估计算法:使用少于1k的内存空间,结果为4%的平均误差案例二 移动广告分析• 目标– 匹配用户和广告,实现移动应用上的广告精准投放– 精准性、互动性、位置性、长尾性• 分析内容– 广告点击率预估– 用户属性标签分类和行为分析– 应用和广告分类– 广告反作弊分析• 相关公司– GoogleAdMob,Inmobi,Millennial,WHERE– 艾德思奇,多盟,艾德尔,力美,安沃,威朋案例二 移动广告分析• 数据规模 – AdMob• 覆盖30万应用,3.5亿移动设备,100万个广告主• 每天40亿广告请求量• 每天3TB数据,总数据规模为PB级别– 国内Top广告平台• 覆盖4万应用,1.2亿移动设备,500家广告主• 日PV3.6亿,月广告展示数100亿• 每天100G,数据规模TB级• 分析方法 – 实时统计分析:count,sum,uniquevisit– 并行数据挖掘:分类,聚类,CTR预估,TopicModel,频繁模式挖掘,时序分析• 典型架构 数 据 源 数 据 收 集 数 据 计 算 分 析 平 台 数 据 应 用 日志数据(展示,点击) 基础数据(广告,应用,用户) 外部数据(注册,付费) 日志收集(Scribe) 消息队列(Kestrel) 实时传输(Kafka) Hadoop离线计算 MapReduce HDFS Hbase Hive 实时计算平台 Storm MPI SQL/NoSQL Greenplum MongoDB 数据挖掘(受众定向、应用分类) OLAP分析(业务统计,BI报表) 实时推荐(广告匹配)MahoutR调度监控Redis Pig 前端接入SDKSDKSDK反向代理Nginx负载均衡LVS实时采集和计算离线计算和分析BI和数
本文标题:移动大数据分析-数据库技术大会36
链接地址:https://www.777doc.com/doc-30094 .html