首先,从字面意思”大数据”,那可以感受到,数据量要大,这是一个必须的条件。举一个例子,比方说我要根据一些销售数据做一个报表给老板看,那么几千条数据甚至几万条,我用excel可以很方便的做出来,数据可以保存在自己电脑上。
那么,当数据几十万到几百万,excel就不能做了,就需要把数据放在数据库,比如常见的mysql等关系型数据库,来计算存储等,但是当数据量几千万几亿几十亿以上呢,怎么办?那就需要大量的服务器和更高的配置机器来存储,计算,做出来报表,这其中就需要大数据技术来实现。所以,大数据的根本条件是数据量要足够大。
说大数据,就不得不说分布式的概念。还是那个做报表的例子,数据量小,放在一个excel表中,放在你自己的一台电脑里存储,数据量大点的时候,放在一台或者独立的放在几台服务器上,再不行就增加配置,装个mysql来管理,但是如果数据量非常大,每天几十Tb过来或者每天要从几十T数据中抽取一些数据来做一些指标给老板看,一台服务器肯定是干不了的,如果把数据分开存储又是相对独立的到几台服务器上肯定会影响数据的总体效果,比如对数据排个顺序。那怎么办呢,是否可以用某种方式或者某个软件把很多台服务器连在一起让他们像一台服务器工作呢,答案是肯定的。这就是分布式系统,把存储和计算分发到每个服务器上来执行,整体看来就像是一台在执行,汇集了多台服务器资源。这种方式或者软件再或者说结构,是阿里云的基础,我们有一个响亮而又充满梦想色彩的名字:飞天系统。那么下面我就围绕数据来介绍,以公司为中心,按照数据从哪里来,来了怎么办,到哪里去这个线路来说下相关概念。
一, 数据从哪里来,怎么来
一切业务数据化。举个例子,寄快递,最开始大家寄东西要填写快递单,手写的,这些是你的信息,姓名,电话,地址等,这些数据被搜集起来,就变成了最原始的数据,比如你在商场逛随便连人家的免费wifi,抱歉你的信息,从哪个门进来,那个门出去,在哪个店呆了多久等信息被搜集(说这些我会不会被找喝茶),再比如大家喜欢追剧,你在哪个页面看了什么电视什么类型看了多久,评论了什么,用的什么手机搜集成为原始数据。
那如果用户非常多,产生的数据也必然非常大。怎么搜集呢,用什么技术呢,那么比如阿里云产品-日志服务等产品,当然还有其他阿里云产品
官方文档:https://help.aliyun.com/product/28958.html?spm=5176.7618386.3.2.L5fXeB
二,数据来了怎么办
一切数据业务化。怎么办是说,这么大的数据,怎么去存储,怎么做计算,怎么做成功能或者成什么样的产品呢。
首先,这样大批量的数据,就可以放在飞天上存储,计算等。那么存储和计算又分很多种,就比如你有一个农场,农场里有很多仓库,仓库里可以放各种东西,比如小麦,你可以放在麦斗里,你也可以装在袋子里堆在那里,你也可以随便倒进仓库就行。可以对这些小麦筛选统计等,那么小麦就是数据,这就是数据仓库,农场上的这个仓库,我们可以对应阿里云的大数据利器ODPS现在叫:Maxcompute。
官方文档:https://help.aliyun.com/document_detail/27800.html?spm=5176.7740343.6.539.HfFlWv
那么用户可以把海量数据放到odps中,进行存储,计算,以及和其他数据源交互等。类似于你可以把麦子进行筛选,去杂质,选出优质麦子,那就是对应到大数据术语,数据的清洗,过滤。到此看似可以满足基本需求了,如果我有很多地方的麦子要装进仓库,我要对很多仓库里的麦子进行筛选,我还要把筛选出来的优质麦子送到科研单位做实验。问题来了,谁先装进仓库,对谁先筛选或者同时筛选,筛选进度,或者说我就想等一号仓库筛选完了再进行2号仓库的筛选,我需要有人进行调度指挥,筛选完了送到其他各个地方,并且我想整个流程透明化,智能化。怎么办?
我们对odps进行了封装并且集成了其他一些功能让操作变得可视化,可用易用
官方文档:https://help.aliyun.com/document_detail/30256.html?spm=5176.7843912.6.539.SfmCgC
用户可以通过可视化的工具-大数据开发套件,来操作odps,另外一个重要的功能是数据同步,把麦子运到其他地方。开发套件中可以界面化配置同步到rds,ads等等各种数据库中,可以定时,可以设置任务的依赖关系和周期,可以预警等等。并且重要的是,目前是免费使用。
话题回到最开始麦子存放,如果麦子源源不断的运过来,从地里收割一把麦子就立刻通过某种流式的比如传送带送到科研单位,并且传送过程中要进行麦子的筛选,鉴别等操作。怎么办,有没有这种实时的通道,流式的具有筛选功能的传送带呢。首先收割采集麦子的方法,我们有一种了,就是上面的日志服务,可以收割,有一个重要的问题不能忽略,就是收割速度很快,我后面的传送带上筛选工具筛选能力不够,麦子会堆积吧,那有没有一种工具,可以先把搜集的麦子源源不断的临时存放在那里,后面流式传送带上筛选多少就从那里取多少,源源不断的取。有这种工具,它就是datahub-实时数据通道,可以通过日志服务把日志实时上传临时存储,那传送带流式的实时筛选器是什么-阿里云流计算
https://help.aliyun.com/video_detail/55154.html
datahub配合流计算使用,天衣无缝。流计算可以从datahub中取数据做到实时计算分析。
话题再次回到存放麦子的问题上,比如我有一些麦子需要非常快速的筛选,计算麦子各种指标,比如品种占有比例,注意是要筛选得速度快,领导随时都会来视察,随到随查的那种。我们可以把数据存放在ADS中,眨眼间,千亿数据随意查询:
官方文档https://help.aliyun.com/product/26371.html?spm=5176.7618386.3.8.NgtbKi
说到数据存储,比如我在农场里不仅是麦子的存放,我还有一些化肥农药汽油什么不是那么规则的物质怎么办呢
官方文档:https://help.aliyun.com/product/31815.html?spm=5176.7618386.3.2.d755W7
oss能存放非结构化的数据,比如音频,视频,图片等并提供快速访问接口,当然日志数据也是可以存的。那么Maxcompute就不可以存放这些数据,要求要是结构化的,但是Maxcompute2.0可以连接oss间接处理非结构化数据。
三,数据到哪里去
既然领导来视察了,来看麦子的各项指标,你还没准备好excel怎么办,请使用阿里云产品:Quick BI
官方文档:https://help.aliyun.com/document_detail/33813.html?spm=5176.doc53448.6.539.bPiG2B
像使用excel那样操作海量数据的报表,我自己都怕了。
那么,如果你还想做个牛逼的ppt给老板看,或者做个动画看看地图上每个位置的麦子产量,整个双11的那种大屏幕给老板看,幸运的是,datav可以满足
官方文档:https://help.aliyun.com/document_detail/44253.html
领导视察完毕,作出重要指示:
- 希望地方可以根据历年使用的化肥,农药,种植的地域,播种时间等因素综合考量指定出最佳的丰收计划
- 希望可以将麦子进行分类,聚类,能够做到下面再有麦子进入仓库可以自动识别它是那种类别
领导的指示不敢怠慢,机器学习来帮你用算法搞定
官方文档:https://help.aliyun.com/product/30347.html?spm=5176.7618386.3.2.sGxA27
机器学习,是一个名词,通俗一点讲,是希望机器通过算法程序实现拥有像人类一样有学习能力,学习后有经验了,长大了,就能够明辨是非了。这种学科演化为专业学科,并不是说让机器会学习。从技术角度说,它是一个技术学科。是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
最后再举一个例子,上淘宝买衣服,发现买了上衣之后,在下面会给你推荐鞋子,裤子或者类似款式的衣服,如果你经常买衣服,会经常给你推荐相关性很强的东西。再比如,刷微博,会根据你经常喜欢点击看哪些视频,给你推荐相同类型的视频。这就是算法实现的,具体来说是推荐算法,属于机器学习学科中的一种算法。如何使用推荐呢
官方文档:https://help.aliyun.com/product/30367.html?spm=5176.7618386.3.2.sgyFWM
比如微博,用户量巨大,我要对每个用户进行推荐,一个推荐算法的实现运行需要对背后海量的数据进行计算,那就是-大数据。所以说,机器学习,推荐算法是基于大数据技术的。阿里云机器学习,推荐引擎是基于Maxcompute的海量存储和计算能力的。往大的说,实际上这些机器学习学科早就出现了,但是因为没有强大的大数据技术的支撑发展缓慢,近些年来随着大数据技术的发展以及服务器在内存和cpu上的突破得以广泛应用,并且推动人工智能的发展。
总结:大数据技术并不是阿里云特有,但是阿里云把它变成了一种普惠服务和平台提供给用户。目前各色各样的企业单位把数据放到云上,百花齐放,是信任。安全稳定是第一要则,所以 云若安好,便是晴天。
如果非让我用一句话总结云计算的话,那便是:彩云之下,万物相连。
有对大数据技术感兴趣的,可以加笔者的微信 wx4085116.目前笔者已经从阿里离职,博客不代表阿里立场。笔者开了一个大数据培训班。有兴趣的加我。