管中窥豹之淘宝大数据平台 博客分类: hadoop技术专栏 hbasehadoop金融中间件淘宝
淘宝这两年比较火,马云为了淘宝整体上市卖个好价钱,吹了不少泡泡。但是从对大数据技术这块来看,个人以为目前淘宝是做的比较好的。淘宝为什么搞得好,还是因为马云本身较早的把数据放到了全公司的战略的地位,所以为了搞好大数据,网罗了不少人才。现在搞数据分析相关技术的同学,如果能拿到的淘宝的OFFER的话,给的都还是比较的高。
下面来简单看下淘宝的技术架构:(淘宝技术也在不停的发展,现在公开的资料可能有些老,当前的分析是基于公开的资料)
整个分为四层:
数据源:来自传统的数据库,RAC集群,系统日志等等。数据的采集用到的了Datax/DbSync/TimeTunnel。DataX是主要是用来异构数据容器交换数据用,所谓异构主要指传统的mysql/oracle和hdfs之间交换数据。DbSync是通过分析数据库服务器的log日志,来讲数据库的数据同步到hdfs上。TimeTunnel是参考kafka产品的一个数据库日志采集收取发布中间件,淘宝最新的中间件应该叫RocketMQ。(kafka相关信息可以参考我前面的文章《高速数据总线kafka分析》)
计算层:淘宝称之为云梯,主要是指hadoop MapReduce集群,查询分析用HIVE。除了非实时的用MapReduce,还有实时流部分,这部分暂时不知道具体用什么技术,可能是storm之类,后面再补充。
存储层:数据存储用到了传统关系数据库(Mysql),通过字段+条目的方式来进行数据库的分片,用关系型数据库主要是还是利用传统关系型数据库的较强的SQL表达式,对全属性交叉的采用Hbase,即上图中的Prom。存储层和上层应用通过中间层来隔离,屏蔽多数据源等具体技术实现。
应用层:主要支撑数据魔方,淘宝指数等等。
最后整个平台通过统一的调度和元数据管理。
以上分析的都是淘宝的数据调度,整个系统主要服务内部的数据分析。阿里集团还有一块云计算,主要是类似亚马逊一样提供弹性云服务,阿里称之为飞天系统。
总的来说
1.淘宝起步较早,对整个大数据平台有很多实际的经验,有个锻炼多年的团队,这是它和业界拉开差距的地方。具体的技术上,开源本身发展很快,目前来看中国的公司目前主要还是停留在选用业界技术和追赶开源的层面。
2.阿里将数据作为整个公司的战略,应该说还是比较有远见的,例如比较火的阿里金融,就是以数据作为支撑,相信破除了央行的监管问题之后,会有一个大的发展。
上一篇: Java布局管理器使用方法
下一篇: Java动态代理实现AOP