大数据基本概念学习

1.什么是大数据:

对于“大数据”(Big data)研究机构Gartner给出了这样的定义。“大数据”是需要新处理模式才能具有更强的决策力洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产
麦肯锡全球研究所给出的定义是:一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
4V:Velocity快速的数据转流  Varlety:多样的数据类型  Volume:海量的数据规模  Value:低价值密度。


2.结构化数据结构与非结构化数据结构:

     结构化数据也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理。


     非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。


3.数据单位:

最小的基本单位是bit,按顺序给出所有单位: bitByte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。
它们按照进率1024(2的十次方)来计算:
1 Byte =8 bit
KB = 1,024 Bytes = 8192 bit
MB = 1,024 KB = 1,048,576 Bytes
GB = 1,024 MB = 1,048,576 KB
TB = 1,024 GB = 1,048,576 MB
PB = 1,024 TB = 1,048,576 GB
EB = 1,024 PB = 1,048,576 TB
ZB = 1,024 EB = 1,048,576 PB
YB = 1,024 ZB = 1,048,576 EB
BB = 1,024 YB = 1,048,576 ZB
NB = 1,024 BB = 1,048,576 YB
DB = 1,024 NB = 1,048,576 BB


4.数据分析流程:采集-ETL-分析-显示

采集:

大数据的采集是指利用多个数据库来接收发自客户端(Web、App或者传感器形式等)的 数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。比如,电商会使用传统的关系型数据库MySQL和Oracle等来存储每一笔事务数据,除 此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。
在大数据的采集过程中,其主要特点和挑战是并发数高,因为同时有可能会有成千上万的用户 来进行访问和操作,比如火车票售票网站和淘宝,它们并发的访问量在峰值时达到上百万,所以需要在采集端部署大量数据库才能支撑。并且如何在这些数据库之间 进行负载均衡和分片的确是需要深入的思考和设计。
ETL:

 
 
ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。 ETL一词较常用在 数据仓库,但其对象并不限于数据仓库。
ETL是构建数据仓库的重要一环,用户从 数据源抽取出所需的数据,经过 数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。
分析:
大数据分析是指对规模巨大的数据进行分析。大数据可以概括为5个V, 数据量大(Volume)、速度快(Velocity)、类型多(Variety)、价值(Value)、真实性(Veracity)。
显示:报表、图形、可视化工具、增强现实
5.计算模式:
交互式数据处理
特点:

 
 
–系统与操作人员以人机对话的方式一问一答—
–操作人员提出请求,数据以对话的方式输入,系统便提供相应的数据或提示信息,引导操作人员逐步完成所需的操作,直至获得最后处理结果.
–存储在系统中的数据文件能够被及时处理修改,同时处理结果可以立刻被使用.
•典型系统
–Dremel、spark
批处理

 
 
•最适合于完成大数据批处理的计算模式是MapReduce ,
•MapReduce 是一个单输入、两阶段( Map 和Reduce) 的数据处理过程。首
•对具有简单数据关系、易于划分的大规模数据采用"分而治之"的并行处理思想
•MapReduce 提供了一个统一的并行计算框架,把并行计算所涉及到的诸多系统层细节都交给计算框架去完成,
•简化了程序员进行并行化程序设计的负担。
流式计算

 
 
•对一定时间窗口内应用系统产生的新数据完成实时的计算,避免造成数据堆积和丢失。
•在电信、电力、道路监控、互联网日志处理等得到广泛应用。
•数据运动,计算不动,不同的运算节点常常绑定在不同的服务器上
迭代计算

 
 
•解决批量计算的难以迭代的缺陷
•典型应用:spark
图计算

 
 
•图由于自身的结构特征,可以很好地表示事物之间的关系
•随着图中节点和边数的增多(达到几千万甚至上亿数), 图数据处理的复杂性增加
•图的存储和处理都十分困难
•中较为典型的系统包括Google 公司的Pregel 、Facebook Giraph 、Spark 下的GraphX
6。简介分布式系统:
 
 
分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户不须知道关系是否分割、有无副本、数据存于哪个站点以及事务在哪个站点上执行等。
7.CDH
CDH:全称Cloudera’s Distribution Including Apache Hadoop

  CDH版本衍化

  hadoop是一个开源项目,所以很多公司在这个基础进行商业化,Cloudera对hadoop做了相应的改变。

  Cloudera公司的发行版,我们将该版本称为CDH(Cloudera Distribution

8.CAP理论
首先,CAP理论描述的对象是一个分布式系统,其中 
C:从客户端来的读请求访问任何一个分布式系统节点,一定能读到最近的一次写请求的结果 
A:访问任何一个还存活的分布式系统节点,一定能够在一个时间范围内返回一个肯定的结果(成功或者失败,不能是超时或者错误) 
P:分布式系统允不允许不同节点间的网络消息丢失。
对于任何一个分布式系统,最多只能满足cap三点中的两点,不可能同时满足全部。 
9.Hadoop技术栈

HDFS(Hadoop分布式文件系统)


源自于Google的GFS论文,发表于2003年10月,HDFS是GFS克隆版。
HDFS是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。
HDFS简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序。
它提供了一次写入多次读取的机制,数据以块的形式,同时分布在集群不同物理机器上。


  Mapreduce(分布式计算框架)
源自于google的MapReduce论文,发表于2004年12月,Hadoop MapReduce是google MapReduce 克隆版。
MapReduce是一种分布式计算模型,用以进行大数据量的计算。它屏蔽了分布式计算框架细节,将计算抽象成map和reduce两部分,
其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果。Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。
MapReduce非常适合在大量计算机组成的分布式并行环境里进行数据处理。


 HBASE(分布式列存数据库)
源自Google的Bigtable论文,发表于2006年11月,HBase是Google Bigtable克隆版
HBase是一个建立在HDFS之上,面向列的针对结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。
HBase采用了BigTable的数据模型:增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。
HBase提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。


 Zookeeper(分布式协作服务)
源自Google的Chubby论文,发表于2006年11月,Zookeeper是Chubby克隆版
解决分布式环境下的数据管理问题:统一命名,状态同步,集群管理,配置同步等。
Hadoop的许多组件依赖于Zookeeper,它运行在计算机集群上面,用于管理Hadoop操作。


 HIVE(数据仓库)
由facebook开源,最初用于解决海量结构化的日志数据统计问题。
Hive定义了一种类似SQL的查询语言(HQL),将SQL转化为MapReduce任务在Hadoop上执行。通常用于离线分析。
HQL用于运行存储在Hadoop上的查询语句,Hive让不熟悉MapReduce开发人员也能编写数据查询语句,然后这些语句被翻译为Hadoop上面的MapReduce任务。

Sqoop(数据ETL/同步工具)
Sqoop是SQL-to-Hadoop的缩写,主要用于传统数据库和Hadoop之前传输数据。数据的导入和导出本质上是Mapreduce程序,充分利用了MR的并行化和容错性。
Sqoop利用数据库技术描述数据架构,用于在关系数据库、数据仓库和Hadoop之间转移数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值