大数据入门教程 入门教程

一、大数据概论

  大数据(big data):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
  最小的基本单位是bit,按顺序给出所有单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。

1Byte = 8bit  1K = 1024bit  1MB = 1024K  1G = 1024M
1T = 1024G  1P = 1024T  1E = 1024P  1Z = 1024E
1Y = 1024Z  1B = 1024Y  1N = 1024B  1D = 1024N

二、大数据特点

1.Volume(大量)

  截至目前,人类生产的所有印刷材料的数据量是200PB,而历史上全人类总共说过的话的数据量大约是5EB。当前,典型个人计算机硬盘的容量为TB量级,而一些大企业的数据量已经接近EB量级。

2.Velocity(高速)

  这是大数据区分于传统数据挖掘的最显著特征。根据IDC的“数字宇宙”的报告,预计到2020年,全球数据使用量将达到35.2ZB。在如此海量的数据面前,处理数据的效率就是企业的生命。
  天猫双十一:2017年3分01秒,天猫交易额超过100亿。

3.Variety(多样)

  这种类型的多样性也让数据被分为结构化数据和非结构化数据。相对于以往便于存储的以数据库/文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图片、地理位置信息等,这些多类型的数据对数据的处理能力提出了更高要求。

4.Value(低价值密度)

  价值密度的高低与数据总量的大小成反比。比如,在一天监控视频中,我们只关心一个人晚上在健身房健身那一分钟,如何快速对有价值数据“提纯”成为目前大数据背景下待解决的难题。

三、大数据应用场景

四、大数据发展前景

  • 党的十八届五中全会提出“实施国家大数据战略”,国务院印发《促进大数据发展行动纲要》,大数据技术和应用处于创新突破期,国内市场需求处于爆发期,我国大数据产业面临重要的发展机遇。
  • 国际数据公司IDC预测,到2020年,企业基于大数据计算分析平台的支出将突破5000亿美元。目前,我国大数据人才只有46万,未来3到5年人才缺口达150万之多。
  • 2017年北京大学、中国人民大学、北京邮电大学等25所高校成功申请开设大数据课程。
  • 具体薪资各个招聘网站上也都有详细说明。

五、企业数据部的业务流程分析

六、大数据部门组织结构

七、大数据技术生态体系

Alt
图中涉及的技术名词解释如下:
  1)Sqoop:sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle 等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
  2)Flume:Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
  3)Kafka:Kafka是一种高吞吐量的分布式发布订阅消息系统,有如下特性:
    - 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。
    - 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息。
    - 支持通过Kafka服务器和消费机集群来分区消息。
    - 支持Hadoop并行数据加载。
  4)Storm:Storm为分布式实时计算提供了一组通用原语,可被用于“流处理”之中,实时处理消息并更新数据库。这是管理队列及工作者集群的另一种方式。 Storm也可被用于“连续计算”(continuous computation),对数据流做连续查询,在计算时就将结果以流的形式输出给用户。
  5)Spark:Spark是当前最流行的开源大数据内存计算框架。可以基于Hadoop上存储的大数据进行计算。
  6)Oozie:Oozie是一个管理Hadoop作业(job)的工作流程调度管理系统。Oozie协调作业就是通过时间(频率)和有效数据触发当前的Oozie工作流程。
  7)Hbase:HBase是一个分布式的、面向列的开源数据库。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。
  8)Hive:hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
  9)R语言:R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
  10)Mahout:Apache Mahout是个可扩展的机器学习和数据挖掘库,当前Mahout支持主要的4个用例:
    - 推荐挖掘:搜集用户动作并以此给用户推荐可能喜欢的事物。
    - 聚集:收集文件并进行相关文件分组。
    - 分类:从现有的分类文档中学习,寻找文档中的相似特征,并为无标签的文档进行正确的归类。
    - 频繁项集挖掘:将一组项分组,并识别哪些个别项会经常一起出现。
  11)ZooKeeper:Zookeeper是Google的Chubby一个开源的实现。它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、 分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

教程来源于Github,感谢旧时光大数据大佬的无私奉献,致敬!

技术教程推荐

DDD实战课 -〔欧创新〕

MongoDB高手课 -〔唐建法(TJ)〕

职场求生攻略 -〔臧萌〕

Vim 实用技巧必知必会 -〔吴咏炜〕

Spark核心原理与实战 -〔王磊〕

技术面试官识人手册 -〔熊燚(四火)〕

零基础实战机器学习 -〔黄佳〕

B端产品经理入门课 -〔董小圣〕

超级访谈:对话道哥 -〔吴翰清(道哥)〕