1.什么是大数据?
短时间内快速产生海量的多种多样的有价值的数据。

2.大数据中的技术
①分布式存储
②分布式计算

  • 分布式处理
    攒一段时间的数据,然后在未来某个时间处理这批数据。
  • 分布式处理
    不需要攒数据,直接处理,每产生一条数据,立刻对这条数据进行处理。

3.分布式存储的数据类型

  • 非结构化的数据
    主要是数据之间的关联系不大,想文本图片之类的数据。
  • 结构化的数据
    数据之间关联系很大,例关系型数据库这种,可以用表进行表示的。
  • 半结构化的数据
    介于上述两种数据类型之间,数据之间的关系简单,典型的代码是HTML文件。

4.分布式存储

  • HDFS构成
    NameNode:管理元数据(解决如何存、往哪存、如何取、去哪取的问题)
作用:掌控全局,管理DataNode以及元数据,元数据存在内存中,接受客户端的读写服务,手机DataNode汇报的Block列表信息(NameNode保存的metadata信息包括文件权限、大小、时间、BlockId、Block副本位置)

DataNode:负责存储元数据

作用: 存储block块,向NameNode汇报,接受client的读要求

Block:存储单元(128M)
Client:文件切分

(1)与NameNode交互,获取文件位置信息;
 (2)与DataNode交互,读取或者写入数据;
 (3)管理/访问HDFS
  • 存储原理
    假设有10pb的文件需要上传,分七个步骤
    ★过程:当client需要存一个资源时,询问NameNode,后者返回一组地址等信息给client,client根据地址等信息向DataNode取存储;当client需要取其中的某个资源时,询问NameNode,后者告诉它文件中在哪里,client直接去取资源。
(1)首先client要计算大文件的block数量(大文件地址/128M=block数量)
  (2)client回向NameNode汇报一下三项
  		①当前大文件的block数
  		②当前大文件属于谁权限
  		③上传的时间
  (3) client切割出来一个block
  (4)请求block块的id以及地址
  (5)因为NameNode能够掌控全局,管理所有的DataNode,所以他将会把负载不高的DataNode地址返回给client
  (6)client拿到地址后,找到DataNode去上传数据
  • HDFS备份机制
    (1)第一个block存储在负载不是很高的一台服务器上。
    (2)第一个设备的block存储在与第一个block不同的机架随机一台服务器上。
    (3)第二个备份在与第一个备份相同的机架随机一台服务器上。
  • HDFS优点
    ①高容错性:数据自动保存多个副本,副本丢失后,自动恢复
    ②适合批处理:移动计算而非数据,数据位置暴露给计算框架
    ③适合大数据处理:GB、TB、甚至PB级数据,百万规模以上的文件上数量,10K+节点规模
    ④流式文件访问:一次性写入、多次读取,保证数据一致性
    ⑤可构建在廉价机器上:通过多副本提高可靠性,提供了容错和恢复机制