数极客首页

品《阿里巴巴大数据实践-大数据之路》一书(上)

7月有人举荐

阿里巴巴刚出的这本书《阿里巴巴大数据理论
-大数据之路》,到亚马逊一看才是预售状态,拍下直到8月才拿到。

品《阿里巴巴大数据理论-大数据之路》一书(上)

翻看目录一看,欢欣
的很,正好出差两天就带在身边,由于在机场滞留超越
12个小时,就把它读完了。

用“品”字有以下几个缘由
,一是市面上充溢

着太多的大数据平台技术的书,诸如hadoop,spark等占领
了大部,但关于
怎样
管好大数据却缺乏一孔之见
,二是这本书的确

干货很多,诚意实足,显然
来自阿里实操人员的阅历

,从作者是阿里巴巴数据技术与产品部就可知道

,三是内容跟笔者的专业相符,里面提到的任何一方面笔者都有实操或管理阅历

,想来自己

有资历
去品评这本书,最终
,阿里巴巴的数据量在那里,其大数据平台历经考验,忽然

透露一些技术秘密

,关于
任何有志于搞大数据的企业或个人,都应该去学习一下。

因而

用“品”,不能像看普通
的书那样字斟句酌
,要能发现里面的先进理念,分别

企业或自身

的理论

看到差距,从中找到能够

自创
的中央
,指导后续的大数据工作。

大数据博大精深,正如这本书也是集体创作一样,受限笔者的水平

,读书笔记也只能浮光剪影
的走一遭,假定

你觉得有启示,能够

去买一本,自己

来品一品。

第一
是一张镇楼图,阿里巴巴的大数据系统的体系架构图,划分为数据采集、数据计算、数据效劳
及数据应用四层,后面的内容就是盘绕
这张图展开的,技术含量有多高,大家都懂的,假定

读到后面迷失了,能够

重新回过头来了解

这张图。

品《阿里巴巴大数据理论-大数据之路》一书(上)

笔者这里选取的内容,主要是与自身

企业对标后觉得
有特性
的,普通
的内容就不提了,当然这仅是笔者的见地
,因而

倡议

读完本文后自己

去看看原书,不定会取得

更多的启示。

一、数据采集

1、线上主动采集工具

阿里巴巴针对web和app端有两个特地
的采集工具Aplus.Js和UserTrack,大多传统公司由于长期运营
线下,关于
web,app等的主动采集才干

是偏弱的,普通
数据管理部门关于
web或app端的采集基本

是源端推送过来的文件,关于
采集没有理论

主导权,内容丰厚
水平

大打折扣,同时无论是web的js脚本还是app的sdk,理论

上都是有一定的技术门槛,企业app源端由于受限于协作
同伴
的才干

,常常
采集才干

不够,数据质量划一

不齐。

互联网源端的日志留存,到底哪些是源端自身

的央求

,哪些是大数据管理的央求

,需求
想分明

大数据管理部门假定

想取得

更好的数据,能否
思索
要往前走一步,毕竟OLAP和OLTP看待

数据的角度不一样,人家没必要为你留你所需求
的数据。

企业的大数据管理部门,能否顺应
互联网的新的方式
,突破

条线分割,在常规的数据库,文本,音讯

等采集基础

上,新增线上的主动采集工具,是庞大

的应战

当前一些企业提供的企业级大数据采集工具,是缺了这条腿的,以后企业往线上走,这个PaaS才干

的确

是要具备的。

2、数据同步

阿里巴巴完成
了诸如oracle的归档日志的增量采集,应该是比较

成熟的,自己

企业也采用过相似

的OGG技术,固然
可行,但开支
很大,新增和存量的兼并
代价很高, DSG希望能雄起。

往常

分库分中心的表越来越多,关于
数据同步的配置越加复杂,阿里巴巴的tddl散布

式数据库引擎能够

经过
树立
中间逻辑来整合统一分库分表的访问,的确

值得自创

很多企业的抽取数据源种类

繁多,管理复杂,阿里搞了IDB来完成
数据库的统一管理,基于这个元数据才干

,在数据同步时,阿里能够

采用oneclick来完成
数据采集的一健配置和批量化同步,管理的深度和厚度可见普通

阿里针对数据漂移也给出了解

决倡议

,其实数据漂移问题在每个企业都大量存在,比如

运营商计费话单的记载
更新时间,日志时间,业务时间和抽取时间常常
不分歧
,这会招致
业务的逻辑问题,你可能在上月底12点未到打的电话,业务记载
却会在本月的话单里。

二、数据计算

1、MaxCompute离线计算引擎

品《阿里巴巴大数据理论-大数据之路》一书(上)

其计算中心
就是网传的飞天内核,包括Pangu(盘古散布

式文件系统)、Fuxi(伏羲资源调度系统)、Shennong(神农监控模块)等。

2、统一开发平台

笔者的企业也有这类平台,但跟阿里的还是有差距,它其实是一个工具集,功用
更完备,体系化水平

更好。

品《阿里巴巴大数据理论-大数据之路》一书(上)

品《阿里巴巴大数据理论-大数据之路》一书(上)

(1)在云端(D2)

D2是集成任务开发、调试及发布、消费
任务调度及大数据运维,数据权限申请及管理功用
的一站式数据开发平台,并能承担

数据剖析

工作台的功用

这个其实十分

相似

笔者企业的DACP,但由于DACP要能对接各类源系统,因而

底层的逻辑其实更复杂,实施

难度更大,而D2基本

只需
对接MaxCompute,这其实也是自主研发的一个益处

,功用
能够

做的更强大,体验更好,但相对比

封锁

(2)SQLSCAN

SQLSCAN将在任务开发中遇到的各类问题,如用户编写的SQL质量差、性能低、不恪守

规范

等,总结构


规则,并经过
系统及研发流程保证
,事前处置

缺陷

隐患,避免

时分
缺陷

这个功用
关于
将平台推到一线至关重要,我们的DACP在推行
过程中,碰到大量的SQL优化问题,但无论是经过
培训还是其他方式,其实都远没有系统中固化规则的好,阿里的理论
很好,开发平台一定要记住不可能人人都是代码专家,要用系统化的方式处置

问题,这是平台能够

范围
化的一个中心
要素。

关于DACP功用
过于庞大的问题,笔者其实也显然
觉得
到了,阿里的关于开发平台拆分为多个产品的一些思绪
给了启示,这是有利于小步快跑的准绳
的,为每个模块取不同的名字,也有利于专项资源的投入。

(3)DQC

DQC(数据质量中心)主要关注数据质量,经过
配置数据质量校验规则,自动在数据处置
任务过程中中止

数据质量方面的监控。

其主要有数据监控和数据清洗两大功用
,数据监控主要是设置规则并报警,有强规则和弱规则之分,强规则能够

阻断任务执行,数据清洗的方式跟我们的大致相似

,在引入过程中不中止

清洗,入库后,再基于配置的规则中止

清洗。

(4)在彼岸

主要将通用的、重复

性的操作沉淀在测试平台中,避免

人肉,进步
测试效率,笔者所在企业的大数据自动化测试固然
也有一些,但功用
不够强大,在彼岸

的功用
包括数据对比

(支持不同集群、异构数据库的表做数据对比

,比如

数据量、字段统计值SUM,AVG等),数据散布

从阿里的统一开发平台能够

看出来,其不只
提供了从任务开发到运维的整套工具,还特别注重体系的完好
性和规则的沉淀,这类平台工具理论

很难由第三方公司提供,而传统企业除了自身

研发力气
不够,常常
由于业务需求的压力招致
在IT这类基础

平台层面的研发投入缺乏
,一味靠资源和人力的投入去处置

一些其实无解的问题,同时将报表取数人员和产品开发人员混编在一同
,构成

疲于应对需求的局面

,这是值得深思的。

3、实时技术

阿里巴巴基于TimeTunnel来中止

实时数据的采集,原理和Kafka等音讯

中间件相似

,采用StreamCompute中止

流式处置
,跟Storm,Stream也相似

,关于
实时统计的问题,它提的些计划

值得自创

在商业智能统计类实时任务中,关于
资源耗费

有一类是十分

高的,那就是去重指标,实时任务为了追求性能,计算逻辑普通
在内存完成,在计算去重时,势必要把去重的明细数据保管

下来,当去重的明细数据抵达

上亿时,内存中放不小,怎样
办?

精确

去重能够

经过
数据倾斜来中止

处置
,把一个节点的内存压力分到多个节点,在含糊

去重的前提下,能够

采用相关的去重算法,把内存运用
量降到千分之一致使

万分之一,布隆过滤器就是一种,其简单来讲就是不保管
明细数据,只保管

明细数据对应哈希值的标志
位,当然会呈现
哈希值碰撞的状况

实时任务在运转
中会计算很多维度和指标,这些数据怎样
存呢?由于实时任务大多是多线程处置
的,意味着数据存储必需
能够

较好的支持多并发读写,并且延时需求
在毫秒级才干
满足实时的性能央求

,普通
运用
Hbase,Tair等列式数据存储系统。

当然诸如HBASE等系统缺陷
也比较

显然
,必需
运用
rowkey, 而rowkey的规则限制了读写的方式,显然没有关系型数据库那么便当
,但关于
海量数据的实时计算和读写,普通
还是适用的,针对HBASE阿里提供了表名和rowkey设计的一些理论
阅历

比如

rowkey能够

采取MD5+主维度+维度标识+字维度+时间维度+子维度2,例如卖家ID的MD5的前四位+卖家ID+app+一级类目+ddd+二级类目ID,以MD5的前四位作为rowkey的第一部分

,能够

把数据散列,让效劳
器整体负载均衡

,避免

热点的问题。

笔者不时

觉得关于
实时数据是不需求
建模的,看来还是太天真了,或许
主要是实时应用在当前很多企业场景不多所致,但阿里显然不一样,其实时统计才干

至关重要,无论是双11大屏还是阿里的生意顾问

,都把实时统计指标作为一个卖点,实时模型跟离线模型的建模理念是分歧
的,比如

阿里的流式模型分为五层,ODS层、DWD层、DWS层、ADS层及DIM层,关于每层的含义在笔者后续的文章中会引见
,这里就不再描画

了。

本文扼要
谈了阿里的数据采集和数据计算,下一篇还谈判

到数据效劳
、数据挖掘

、数据建模、数据管理及数据应用等,十分

精彩,固然
关于
很多企业来讲,这些平台和工具可能过重,但思想是先进的。

关于
在做相似

产品的大公司或者努力
于大数据运营的大企业,则要好好研讨
一下, 它山之石,能够

攻玉。

发表评论

评论已关闭。

相关文章