大数据基础知识

一、大数据

1、什么是大数据?

大数据(Big data或Megadata):大数据,或称巨量数据、海量数据、大资料,指的是所涉及的数据量规模巨大到无法通过人工,在合理时间达到截取、管理、处理、并整理成为人类所能解读的形式的信息。

2、大数据特点

数据量大(Volume):第一个特征是数据量大,包括采集、存储和计算的量都非常大。大数据的起始计量单位至少是P(1000个T)、E(100万个T)或Z(10亿个T)。

类型繁多(Variety):第二个特征是种类和来源多样化。包括结构化、半结构化和非结构化数据,具体表现为网络日志、音频、视频、图片、地理位置信息等等,多类型的数据对数据的处理能力提出了更高的要求。

价值密度低(Value):第三个特征是数据价值密度相对较低,或者说是浪里淘沙却又弥足珍贵。随着互联网以及物联网的广泛应用,信息感知无处不在,信息海量,但价值密度较低,如何结合业务逻辑并通 过强大的机器算法来挖掘数据价值,是大数据时代最需要解决的问题。

速度快时效高(Velocity):第四个特征数据增长速度快,处理速度也快,时效性要求高。比如搜索引擎要求几分钟前的新闻能够被用户查询到,个性化推荐算法尽可能要求实时完成推荐。这是大数据区别于传统数据挖掘的显著特征。

数据是在线的(Online)。数据是永远在线的,是随时能调用和计算的,这是大数据区别于传统数据最大的特征。

Veracity:数据的准确性和可信赖度,即数据的质量。

3、大数据的数据单位

按顺序给出所有单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。(进率2^10)

二、数据仓库

1、什么是数据仓库?

在计算中,数据仓库(DW或DWH)也称为企业数据仓库(EDW),是用于报告和数据分析的系统,被视为商业智能的核心组件。DWs从一个或多个不同源的综合数据的中央储存库。他们将当前和历史数据存储在一个地方,用于为整个企业的工作人员创建分析报告。

2、数据仓库两种操作方式的特点

在线分析处理(OLAP)的特点是交易量相对较低。查询往往非常复杂,涉及到聚合。对于OLAP系统,响应时间是一种有效性度量。数据挖掘技术广泛使用OLAP应用程序。OLAP数据库以多维模式(通常为星型模式)存储汇总的历史数据。与数据集市相比,OLAP系统通常具有数小时的数据延迟,而数据集市预计延迟将接近一天。OLAP方法用于分析来自多个来源和视角的多维数据。OLAP中的三个基本操作是:总结(合并),钻取和切片和切块。

联机事务处理(OLTP)的特点是大量短暂的在线事务(INSERT,UPDATE,DELETE)。OLTP系统强调非常快速的查询处理并保持多访问环境中的数据完整性。对于OLTP系统,有效性以每秒交易次数来衡量。OLTP数据库包含详细和当前的数据。用于存储事务数据库的模式是实体模型(通常是3NF)。规范化是对在该系统中数据建模技术的规范。

三、ETL与DM的区别

ETL/Extraction-Transformation-Loading——用于完成DB到DW的数据转存,它将DB中的某一个时间点的状态,“抽取”出来,根据DW的存储模型要求,“转换”一下数据格式,然后再“加载”到DW的一个过程,这里需要强调的是,DB的模型是ER模型,遵从范式化设计原则,而DW的数据模型是雪花型结构或者星型结构,用的是面向主题,面向问题的设计思路,所以DB和DW的模型结构不同,需要进行转换。

DM/Data Mining/数据挖掘——这个挖掘,不是简单的统计了,他是根据概率论的或者其他的统计学原理,将DW中的大数据量进行分析,找出我们不能直观发现的规律。

四、Hadoop

1、什么是Hadoop?

维基百科上面,Hadoop的定义是:一个用java语言编写的便于大型数据集合的分布式储存和计算的软件框架。简单来说,这是计算机领域的一个开源软件,任何程序开发者都可以看到它的源代码,并且进行编译。它的出现让大数据的储存和处理一下子变的快了很多,也便宜了很多。

2、Hadoop特点是什么?

高效率(Efficient):分布式云计算,采用标准x86架构服务器大规模集群实现,每个模块都是一个离散的处理单元,使用并行计算技术,及群内各计算节点负载均衡,当某节点负荷过高时,可智能的将负荷转移到其他节点,并支持节点线性平滑扩展;分布式云存储,采用x86服务器的本地硬盘实现,使用分布式文件系统,每份数据至少保存在3个节点,保证存储设计的性能和可靠性目标。

可靠性(Reliable):能搞自身的维护数据的多个成本,并且在任务失败是自动的重新部署计算任务

可扩容性(Scalable):能可靠的储存和处理PB级的数据

成本低(Economical):可以通过普通机器组成的服务器群来分发以及处理数据。这些服务器群总计可达数千个节点。

五、大数据的数据结构

结构化数据:即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据非结构化数据:非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。半结构化数据:指结构数据中,结构不规则的数据,由于结构变化很大也不能够简单的建立一个表和他对应。如:声音、图像文件等之间的数据,HTML文档就属于半结构化数据。它一般是自描述的,数据的结构和内容混在一起,没有明显的区分。

六、大数据的计算模式

批处理计算 ( MapReduce,Spark):最适合于完成大数据批处理的计算模式是MapReduce,首先,MapReduce对具有简单数据关系、易于划分的大规模数据采用“分而治之”的并行处理思想;然后将大量重复的数据记录处理过程总结成Map和Reduce两个抽象的操作;最后MapReduce提供了一个统一的并行计算框架,把并行计算所涉及到的诸多系统层细节都交给计算框架去完成,以此大大简化了程序员进行并行化程序设计的负担。

流式计算 (Scribe ,Flume,Storm,S4,SparkStreaming)流式计算是一种高实时性的计算模式,需要对一定时间窗口内应用系统产生的新数据完成实时的计算处理,避免造成数据堆积和丢失。

迭代计算( HaLoop ,iMapReduce,Twister,Spark)为了克服Hadoop MapReduce难以支持迭代计算的缺陷,工业界和学术界对Hadoop MapReduce进行了不少改进研究。HaLoop把迭代控制放到MapReduce作业执行的框架内部,并通过循环敏感的调度器保证前次迭代的Reduce输出和本次迭代的Map输入数据在同一台物理机上,以减少迭代间的数据传输开销;

交互式计算

图计算 (Pregel,PowerGrapg,GraphX)

内存计算(Dremel,Hana,redis)

七、大数据的工作流程

1、采集与预处理

从数据源采集的数据,需要通过数据融合、数据集成、数据整合,生成新的数据集,供后续查询、分析、处理提供统一的数据视图

2、存储管理

分布式文件系统

分布式数据库(NEWSQL、NOSQL)

3、计算模式

包括批处理、交互式处理、流式计算、迭代计算、图计算、内存计算

4、分析与挖掘

5、可视化处理

八、CDH简介

CDH首先是100%开源,基于Apache协议。基于Apache Hapdoop和相关projiect开发。可以做批量处理,交互式sql查询和及时查询,基于角色的权限控制。在企业中使用最广的hadoop分发版本。

九、分布式架构设计CAP的工作原理

一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本),换句话就是说,任何时刻,所用的应用程序都能访问得到相同的数据。

可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新具备高可用性),换句话就是说,任何时候,任何应用程序都可以读写数据。

分区容错性(P):以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择,换句话说,系统可以跨网络分区线性的伸缩和扩展。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181128A0MVLM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券