淘宝网数据分析&建模索尼淘宝网课程简介数据分析的基本概念数据分析的基本过程数据分析实践•三种数据分析案例•常用的数据分析工具•不同的数据分析分类实践淘宝网数据分析的目的数据分析的目的•从数据中提炼规律我们为什么要数据分析•我们有很多数据商品、交易记录系统埋点日志用户浏览日志等等•数据可以告诉我们很多信息预估商品增长信息数据库分库方案是否合理等等淘宝网数据分析能做些什么?•分析新业务需求,通过数据模型模拟业务增长,评估需求的可行性。通过方案模拟,验证与改善系统方案业务预演•监控核心业务数据的增长情况,比如每日新发商品数量跟踪监控,每日交易数据监控等。核心业务监控淘宝网数据分析的简要流程数据分析过程与分类淘宝网数据分析的大致过程识别需求•需要分析什么?收集数据•哪些数据可以为我所用?分析数据•运用常用的统计方法可视化数据!完善模型•迭代验证模型,不断细化指标!回流业务淘宝网数据分析大致过程识别需求收集数据分析数据完善模型回流业务淘宝网常见数据分析分类验证性数据分析•分库分表规则验证•热点商品分布验证描述性统计分析•全网商品分布情况•每天新发布商品来源统计探索性数据分析•通过分析商品的增长情况分析预估淘宝网通过数据来检验方案验证性数据分析淘宝网验证性数据分析应用场景•验证系统可行性方案•排查线上问题淘宝网案例:商品分库方案验证需求•按商品ID拆分成多少个库是合适的?•按商品ID拆分成多少张表是合适的?•拆分之后每个库的存储压力是怎么样的?哪些数据可以使用•商品表•每天被浏览的商品淘宝网商品分库方案验证-提取数据按分库规则统计每个库的商品个数•纬度:全网、在售商品、每天被浏览商品•方式:按2、4、8、16…1024、2048分库规则统计每个库的商品数、以及PV分布统计每个分库规则下每个库的商品偏差•商品数最大、最小值•统计偏差度已知数据库相关经验数据(mysql)•单表:1000W以内•单库:1.5亿左右淘宝网分析-商品记录数分布淘宝网分析-商品PV分布淘宝网相关数据参见附件:商品分库规则验证淘宝网数据解读-全网/在线商品统计每个库的平均商品数•16拆分时大概8.5KW/(库|表)•1024拆分时大概133W/(库|表)偏差度•每个库的商品数的最大值和最小值相差不大•在1024的分库规则下偏差度也只有1%左右淘宝网数据解读-每天商品详情PV分布每个库的平均商品数•16拆分时大概2.2KW/(库|表)•1024拆分时大概35W/(库|表)偏差度•每个库的商品详情的PV的最大、最小值相差不大•在1024的分库规则下偏差度高达82%左右淘宝网可视化数据01002003004005006007008002481632641282565121024204840968192偏差度呈指数增长淘宝网数据分析-结论对存储的压力•采用商品ID求模的方式进行分库,数据分布比较均匀,各个库存储压力相当•考虑到mysqlddl的时候单表数据量最好控制在1kw以内,采用1024分表方式是比较合适的。(规划7倍余量,同线上PC+Oracle一致)热点商品的影响•如果在16分库下余量按实际值增加4%预估•如果在1024分库下余量按实际值增加82%预估淘宝网分析方法汇总计算偏差值•预估数据的偏斜度•合理化余量预估数据可视化•让数据更直观淘宝网扩展分析-课后作业商品库按卖家ID进行分库分析•根据卖家ID进行分库•数据分布情况?拆分多少个库是合理的?如果修改了商品ID生成规则多久才能全部更新完毕?•统计商品记录创建时间分布情况淘宝网实践活动-验证用户表分库规则需求•用户表分库规则•预估存储的压力原始数据•随机采样60W用户(千分之一)•每行数据大小平均为128个字节产出•分库规则、分析过程、理由淘宝网课后练习订单分库规则预演•按卖家、买家分库•数据分布情况?拆分多少个库是合理的?淘宝网知识回顾应用场景•验证系统可行性方案•排查线上问题常用分析方法•计算偏差值•数据可视化淘宝网工欲善其事,必先利其器工具篇淘宝网数据挖掘工具单机分析工具•linuxshell:awksortjoinuniq等命令•perl、python、java等编程语言•SQL分布式分析平台•Hadoop-云梯(Map/Reduce、Hive)淘宝网分布式分析平台Hadoop•-Hadoop是一个分布式数据分析计算系统,GoogleM/R分析模型的开源实现。M/R模型•-Google提出来的一个数据分析模型,将数据分析过程分解成Map和Reduce两个过程HIVE•-Hadoop下面的一个子项目,可以将SQL语句转化成M/R,,提高开发效率,类似的工具还有ApachePig。淘宝网目前云梯的规模云梯规模•1424台slave•TT1404个•DN1424个(总容量21.3PB)数据存储规则•一天一个镜像•业务相关表顺序同数据词典一致•存储格式的简单辨识法淘宝网Map/Reduce模型淘宝网M/R初体验简单的M/RJOB几点建议•禁止打印日志•数据容错处理•慎用外部服务•合理设置Reduce个数•防止数据倾斜•合理使用Combiner淘宝网实践活动-开发一个简单的M/R原始数据•数据字段同数据词典一致•普通的文本格式,字段间用制表符分隔•数据规模:小于100W•Status取值范围是-9值9整数需求•开发一个简单的M/RJob统计Status各个值的数量•计算各个状态占比淘宝网Hive初体验一个简单的Hive示例几点建议•注意分区参数(pt)•善用limit参数•hivesqlsynctablocsql淘宝网实践活动-Hive通过Hive实现上述需求实现过程•建立Hive表•加载数据到Hive•执行Hive语句,通过各个状态数量•计算各个状态占比淘宝网让数据反映当前情况描述性统计分析淘宝网能干嘛?应用场景•监控线上业务发展情况•验证业务的合理性常用模型•同比环比增长监控•增长趋势追踪•指标对比•数据分布(饼图)淘宝网案例:新商品来源分布需求•分析每天发布的新商品的来源•追踪各个来源的增长情况原始数据•商品表•数据规模:13亿淘宝网分析过程统计每天发布的新商品的发布来源•云梯(Hive)对比昨天、上周数据•同比、环比增长情况统计各个来源下商品的状态分布•在售、下架等各个状态的商品数量•追踪各个状态增长趋势淘宝网数据来源数量占比昨天涨幅上周涨幅TOP633.28万64.04%666.89万↓5.0395%660.43万↓4.1108%SELL107.81万10.90%110.0万↓1.986%106.13万↑1.5891%DPC235.03万23.76%248.07万↓5.2545%244.2万↓3.7543%TBCP2.74万0.27%2.17万↑26.449%2.03万↑35.298%NULL9.9万1.00%9.01万↑9.849%5.02万↑97.121%状态数量占比昨天涨幅上周涨幅在售534.63万84.42%565.93万↓5.53%557.45万↓4.09%在售-小二32970.05%4117↓19.9%3135↑5.16%用户删除25.67万4.05%28.1万↓8.66%29.42万↓12.7%用户下架11.08万1.74%10.0万↑10.7%9.98万↑10.9%小二下架29.67万4.68%31.49万↓5.75%29.39万↑0.97%小二删除11.07万1.74%9.07万↑22.0%11.31万↓2.09%从未上架15.68万2.47%17.42万↓10.0%18.65万↓15.9%CC5.12万0.8%4.43万↑15.4%3.87万↑32.1%淘宝网可视化-商品发布来源分布淘宝网Top发布商品追踪淘宝网TBCP趋势追踪淘宝网分析结论商品主要发布来源是TOP•多关注TOP商品发布逻辑,优化相关业务TOP发布的商品质量比较差•商品在售比率•商品小二下架比率TBCP业务正处于快速增长阶段•TBCP商品增长趋势淘宝网方法汇总挖掘关键指标•在售商品占比•小二下架商品占比数据不是孤立的•对比不同的指标TOP、SELL、DPC每天发布商品数对比TOP、SELL、DPC质量指标对比•持续追踪TOP发布商品在逐渐减少,商品管理增长逐渐生效TBCP业务正处于快速增长阶段淘宝网系统化数据追踪业务预演平台简介•持续追踪业务增长情况•平台化数据展现,关注模型淘宝网实践活动-用户注册与激活统计原始数据•每天增量用户信息需求•统计每天注册用户状态分布•统计每天激活用户激活方式分布淘宝网知识点回顾应用场景常用方法分析要点•挖掘关键指标•数据不是孤立的对比不同的指标持续追踪淘宝网课后练习类目的交易额与商品数•统计各个一级类目的交易额•统计各个一级类目下的商品数•挖掘指标:哪个类目的商品的性价比比较高?淘宝网让数据预测未来探索性数据分析淘宝网能干嘛?应用场景•评估业务的可行性•预估的现有业务增长情况淘宝网案例:预估商品增长趋势需求•预估在售商品的增长情况原始数据•商品表(多日镜像数据)淘宝网分析过程统计过去一个月的在售商品增长情况分析模型•通过跟踪多天的商品的数量,来计算在售商品的同比环比增长率。•以7天为一个周期,迭代预估商品的增长情况。淘宝网分析过程-Step1统计过去一个月的在售商品增长情况•在售商品数•同比增长率(同上周相比)•环比增长率(同昨天相比)淘宝网分析过程-Step1时间数值同昨天相比较增幅(昨天)同上周相比较增幅(上周)2011年4月2日843068309↑1841750↑0.2189%↑13291848↑1.6018%2011年4月1日841226559↑1053195↓0.125%↑13278312↑1.6037%2011年3月31日842279754↑3018182↑0.3596%↑16373046↑1.9824%2011年3月30日839261572↑2027498↑0.2421%↑15338131↑1.8615%2011年3月29日837234074↑3098850↑0.3715%↑15714130↑1.9128%2011年3月28日834135224↑2091166↑0.2513%↑15129865↑1.8473%2011年3月27日832044058↑2267597↑0.2732%↑15304191↑1.8738%2011年3月26日829776461↑1828214↑0.2208%↑15929745↑1.9573%2011年3月25日827948247↑2041539↑0.2471%↑16151503↑1.9895%2011年3月24日825906708↑1983267↑0.2407%↑15948694↑1.969%淘宝网分析过程-预估模型预估模型-均值模型•当天增长率=过去4个周期内环比增长率均值•具体案例:4月3日的增长率运算过程分别取3月27日,3月20日,3月13日,3月06日环比增长率取4个环比数据做均值做4月3日的环比增长率淘宝网预估未来一周在售商品量时间数值环比增长率(%)2011年4月3日8452181330.2552011年4月4日8467733340.1842011年4月5日8490934920.2742011年4月6日8513690620.2682011年4月7日8535230250.2532011年4月8日8545301820.1182011年4月9日8564016030.219淘宝网数据解析得到了哪些数据?•未来一周每天商品量•未来一周每天商品环比增长率这些数据能干吗?•在线商品增长监控监控是否有异常数据发生(需求变更导致增长超过预期)•评估在线商品增长是否符合预期淘宝网实践活动未来一周的用户注册量预估•评估一周之后用户注册数如何将Session保持在同一机房?•用户访问淘宝短时间内IP是否会发生变化吗?•发生变化的用户数量如何?淘宝网知识点回