淘宝海量数据产品技术数据产品赵昆11年11月26日星期六WHO AM I•赵昆 (淘宝花名:空无)•淘宝网 - 数据平台与产品部 - 数据产品•热爱技术、热爱数据、热爱生活•果粉、G粉•微博:@此处空无⼀一人11年11月26日星期六误区•淘宝是一家电子商务公司•数据越多越值钱•海量只是数据量更大•云计算只是一个概念11年11月26日星期六传统海量数据产品误区•只关注分析处理性能,不关注数据查询性能•大型商业产品更好•Oracle/GreenPlum可以解决大多数问题•IBM/EMC•开源产品更好•Hadoop可以解决一切问题•Hadoop成本更低•数据展现不重要11年11月26日星期六大纲•大数据在淘宝的挑战•分布式存储计算•实时计算•实时流处理•数据可视化•数据产品实践11年11月26日星期六大数据在淘宝的挑战11年11月26日星期六淘宝规模PV20亿商品数8亿+用户数4.4亿品牌数8万+SPU334万每分钟销售商品件数4.8万件高峰日成交金额52亿元11年11月26日星期六淘宝数据特点•数据量大•内容多样•日志型数据•文本数据•关系型数据•维度丰富•涵盖近100个不同行业的商品维度,五级商品类目体系•近80000个品牌•商品维度+卖家维度+买家维度•源数据质量不高•非法交易•恶意评价•用于自定义属性11年11月26日星期六挑战•20PB 总量•900TB 每天计算扫描数据量•月增1.5P•日增0.06P•高峰处理数据量:30G/s•...11年11月26日星期六挑战•数据的商业模式不清楚,缺乏足够的业务支撑•海量数据处理的基础技术需要大量的研发投入•数据安全机制非常复杂,还要兼顾效率•开放的同时,需要防止数据被恶意爬取•基础设施的建设周期较长,可能赶不上业务的变化•数据自身变化演进,数据更新非常困难11年11月26日星期六传统的数据平台大容量存储数据同步展现API离线计算高性能DB11年11月26日星期六有没有完美的数据平台?11年11月26日星期六我心中的完美大容量存储数据同步实时传输实时计算展现API离线计算高速访问存储11年11月26日星期六在线计算实时处理数据API实时同步淘宝DB底层存储在线存储安全过滤层数据写入API 业务系统Open DBOpen DB数据同步TOP API服务API离线计算数据挖掘TOP API淘宝数据应用缓冲区存储Open Hosting数据工场11年11月26日星期六分布式存储计算11年11月26日星期六M/RHive分布式存储计算•M/R: •文本数据•数据挖掘•复杂计算•HQL: •中间层建设•维度转换•指标加工RPTAutoma'cCodeFramework RPT11年11月26日星期六使用状况•分布式存储和计算•1800+ Hadoop集群•24G+2T*12T•离线 •7:00 前必须处理完昨日增量计算•(目前每天3半点前处理完成)•在线•实时的交易跟踪,秒级别的延迟•实时千万级交易维度交叉计算•分布式数据挖掘•30个节点的Mahout集群•淘宝母婴频道推荐月底上线11年11月26日星期六•多维数据立方体构造 •满足业务对数据分析灵活性要求•压缩数据处理中间过程•减少表间关联•计算时对维度抽象转换:•一次过程进行多粒度进行指标汇总•支持用户自定义11年11月26日星期六Myfox - 分布式Mysql集群•基于Mysql Myisam存储引擎•海量数据分布式存储、非实时写入•提供全镜像、路由字段、记录条数、组合等数据分片规则•32个节点11年11月26日星期六Myfox - 分布式Mysq集群14MyFOX(虚拟机)热节点(MySQL)15kSAS硬盘,300G*12,8节点冷节点(MySQL)7.2kSATA硬盘,1T*12,8节点MS路由信息库MySQLMySQL=MySQLMySQLMySQL==11年11月26日星期六Myfox - 数据查询结果合并取分片数据路由层查询层计算层缓存缓存SQL解析语义理解查询路由字段改写分片SQL计算规则APC11年11月26日星期六挑战•淘宝涵盖100个行业的商品•属性值的条数2000W如何获取任意多个商品属性值组合产生的交易 ?11年11月26日星期六实时计算11年11月26日星期六Prom•T级数据量(7天总量hbase)•千万级记录实时计算分析•以byte[]方式存储于hbase11年11月26日星期六ClientAppSharesMergeShard1CacheShard2CalcDataFetchIndexDataStorageIndexStorage11年11月26日星期六Glider•高性能异构数据中间层•统一restful数据输出接口•使用SQL Like作为配置语法•整合多种数据源,不同数据源之间数据可以进行SQL关联操作•Myfox/iSearch/Prom/Andes/Mysql/Hbase/TOP API•简单的数据二次加工•内置二级缓存•单虚拟机 8000qps (4CPU/7G内存)•请求分优先级11年11月26日星期六挑战•如何获取店铺实时数据? •不能直接主库上计算啊,主库表示压力很大。11年11月26日星期六实时流处理11年11月26日星期六银河 - 实时流处理平台•基于Actor模型的分布式流数据实时处理和计算框架•底层基于开源软件AKKA实现•消息既数据•客户端3台(1.5万/s),Hbase 5台•日处理3亿数据量前端应用实时计算系统数据源实时流处理实时流计算数据缓存数据反馈11年11月26日星期六银河 - 技术框架Other&PNs&AKKAConfigurationManagerDataEventDispatcherStatusMonitorStageContainerDataAPIControl&ManagementAPIPNStageManager&&&ZKConfigfile&DBZK11年11月26日星期六银河 - 数据流11年11月26日星期六应用•实时行业总体数据•分类目实时商品成交排行•实时店铺汇总数据•实时店铺浏览、交易明细•实时用户成交排行11年11月26日星期六数据可视化11年11月26日星期六数据可视化•为什么要研究数据可视化?数据太枯燥、难懂数据大爆炸数据关系太复杂数据背后隐藏什么?11年11月26日星期六11年11月26日星期六11年11月26日星期六11年11月26日星期六11年11月26日星期六浪淘金•社会化电子商务数据可视化分析工具•淘宝数据平台与新浪微博合作项目11年11月26日星期六可视化应用开发流程11年11月26日星期六总结大容量存储数据同步实时传输实时计算展现API离线计算高速访问存储11年11月26日星期六数据产品实践11年11月26日星期六数据魔方data.taobao.com11年11月26日星期六挑战•数据量巨大•商品更新•类目变化频繁•大单、走账•作弊、刷信用•数据安全•马太效应11年11月26日星期六数据魔方•淘宝第一个基于全量数据的数据产品•底层基于云计算•第一个成熟的、基于海量数据的商业数据产品•明年计划开放数据给第三方应用11年11月26日星期六数据魔方 - 数据模型11年11月26日星期六淘宝数据产品架构47Cloud MySQL Myfox Prom KVProxy TC Redis HBase Andes SearchEngine Glider Cubex Index API Mytaobao LisLng 3rd 11年11月26日星期六维度和指标维度基本维度时间类目品牌产品买家维度年龄性别地区买家信用购买频次卖家维度地区卖家信用卖家类型促销方式指标交易指标GMV成交金额笔数人数商品数Alipay成交金额笔数人数商品数成交店铺行为指标搜索人数搜索次数浏览人数浏览次数收藏人数收藏次数规模指标上架店铺上架商品活跃店铺活跃商品属性价格区间11年11月26日星期六11年11月26日星期六11年11月26日星期六淘宝指数•淘宝下一个重要的数据产品•完全免费•2011正式发布•流行趋势、消费者研究11年11月26日星期六11年11月26日星期六11年11月26日星期六11年11月26日星期六其他数据产品•淘宝魔镜•TCIF•母婴推荐•淘宝情报•卖家经营报告•商品评论分析系统•淘宝数据门户 *•LabsEngine *11年11月26日星期六未来•开放•数据开放•平台开放•系统开源•实时 •实时计算•流处理11年11月26日星期六Thanks微博: @此处空无一人kongwu@taobao.com11年11月26日星期六