内容简介
一、什么是大数据?它可以做什么?
- 接触大数据也有一段时间了,从当初什么都不会的纯小白到现在已经基本入门(还是很弱),在学习的道路上跌跌撞撞的,一部分原因是国内大数据的学习资料相比于其他IT技术要少很多,还有一部分原因是大数据涉及的知识比较多,知识点多,相对来说比较复杂,因此今天就想着把自己所学的东西整理一下,纯当是个人的分享,如有错误的地方请大方指出来,大家一起交流学习!
- 什么是大数据呢?随便百度或者谷歌一下都可以得到很多专业的答案,但是都比较晦涩难懂涉及到很多专业的名词,其实在我看来,抛开依靠大数据实现的功能(预测、推荐)不说,只说大数据本身所做的最基础的最核心事情,归根到底,只做了两件事情,或者说只提供了两个最核心的服务:海量数据的存储和计算。存储和计算是每台计算机都有的服务,这以“知识点多”的大数据似乎没有什么关系,所以重点是“海量”,数据量非常之巨大(数千TB甚至更多),以致于一台计算机无法在短时间内处理甚至无法处理,需要多台计算机并行处理,这就是大数据的核心思想------分而治之,将海量的数据拆分为小块,分配给多台计算机,进行存储或运算。所以高深莫测的“大数据”归根到底就是基于集群(多台计算机)的存储和运算。
- 大数据可以做什么呢?首先大数据本身的技术是处理海量的数据,因此可以完成各种类型数据的清洗、统计,流量的监控,最典型的例子就是微博热搜,如果你有留意的话,会发现微博搜索框旁边有一小行字“微博热搜 每分钟更新一次”,其实就是在一分钟时间段内统计搜索词的个数倒叙排序,用到了大数据的实时流计算的技术,类似于这种流量监控的还有哦百度热搜等各种热搜,除此之外,还有电商平台的热卖商品、热卖品类等等,大数据技术还可以向上层技术提供基础服务,比如说机器学习,是必须建立在大数据实时流处理基础之上的技术,结合起来可以实现很多的推荐,典型的有网易云音乐的每日歌单推荐,电商平台的商品推荐等等,如果机器学习离开了大数据,那它将无法“学习”了,除此之外还有股票预测,大数据舆情监控品台、大数据反欺诈平台等等,都是大数据的应用。
二、走进大数据生态框架
1.Hadoop
- Hadoop这应该是我们听得最多的一个大数据框架了,它也绝对是开源的大数据框架的“开山鼻祖”,在整个大数据生态也有着重要的地位,那么Hadoop是什么呢?它是由一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。其实在我看来用“海量数据批处理平台”来形容它更为贴切,因为Hadoop本身即可完成海量数据的存储和计算,Hadoop有三大核心组件:
(1).分布式文件系统HDFS。
(2).分布式计算框架MapReduce。
(3).分布式资源调度框架YARN(Hadoop2.x版本后)。
分布式文件系统HDFS顾名思义即是协调多台计算机来存储海量的数据,核心思想便是将文件切割,然后存储在多台计算机上,它定义了“如何存储”,提供可靠的数据存储服务;分布式计算框架MapReduce,其实是一种分布式计算的模型,每台计算机会依照这个模型进行计算,它定义了“如何计算”,提供可靠的计算服务;分布式资源调度框架YARN负责调度MapReduce的资源