大数据基础知识及分布式存储原理
大数据学习day01
- 什么是大数据(Big Data)
- 大数据概念
- 大数据技术:
- 分布式存储
- 分布式计算
- 分布式存储
- HDFS
- HDFS原理
- Client(客户端)
- NameNode
- Secondary NameNode
- 合并机制过程
- DataNode
- HDFS读写流程
- 读流程
- 写流程
- HDFS备份机制
- HDFS权限
- HDFS安全模式
什么是大数据(Big Data)
大数据概念
大数据是指海量数据或巨量数据,其规模巨大到无法通过目前主流的计算机系统在合理时间内获取、存储、管理、处理并提炼以帮助使用者决策。
短时间内快速的产生海量的多种多样的有价值的数据。
大数据技术:
分布式存储
分布式计算
分布式批处理
攒一段时间的数据,然后再未来某一个时间来处理这批数据分布式流处理(实时处理)
数据不需要积攒,直接处理,每产生一条数据,立马对这条数据进行处理,将结果推送到前端,如双十一的天猫大屏幕,qq实时在线分布情况机器学习
分布式存储
HDFS
HDFS(Hadoop Distributed File System)是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的,可以运行于廉价的商用服务器上。它所具有的高容错、高可靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存储,为超大数据集(Large Data Set)的应用处理带来了很多便利。
HDFS原理
Client(客户端)
- 文件切分。文件上传 HDFS 的时候,Client 将文件切分成 一个一个的Block,然后进行存储。
- 与 NameNode 交互,获取文件的位置信息。
- 与 DataNode 交互,读取或者写入数据。
- Client 提供一些命令来管理 HDFS,比如启动或者关闭HDFS。
- Client 可以通过一些命令来访问 HDFS。
NameNode
Namenode存放文件系统树及所有文件、目录的元数据。就是 master,它是一个主管、管理者。
6. 管理 HDFS 的名称空间。
7. 管理数据块(Block)映射信息
8. 配置副本策略
9. 处理客户端读写请求。
Secondary NameNode
模拟执行edits文件,产生元数据,将元数据与fsimage合并完成后,将新的fsimage推送给namenode
合并机制过程
Secondary NameNode节点的工作流程:
1)、定期的通过远程方法获取NameNode节点上编辑日志(edits)的大小;
2)、如果NameNode节点上编辑日很小,就不需要合并NameNode上的fsimage文件和编辑日志;
3)、通过远程接口启动一次检查点过程,这时名字节点NameNode需要创建一个新的编辑日志文件edits.new,后续对文件系统的任何修改都记录到这个新编辑日志里;
4)、SecondNameNode点将Namenode上的fsimage文件和原编辑日志下载到本地,并在内存中合并,合并的结果输出为fsimage.ckpt;
5)、再次发起请求通知NameNode节点数据(fsimage.ckpt)已准备好,然后NameNode节点会下载fsimage.ckpt(并替换掉原来的fsimage);
6)、NameNode下载结束后,Secondary NameNode会通过远程调用(NameNodeProtocol.rollFsImage())完成这次检查点,NameNode在响应该远程调用时,会用fsimage.ckpt覆盖原来的fsimage文件,形成新的命名空间镜像,同时将新的编辑日志edits.new改名为edits。
并不是所有元数据都会持久化
合并触发机制:
- 超过3600ms
- edits文件超过64mb
DataNode
主要功能:存储数据块(block)默认大小为128mb
DN启动时会向NN汇报block信息,并且之后通过向NN发送心跳保持联系(3秒一次),如果NN在10分钟内没有收到DN的心跳,就认为该DN已经lost,并copy其上的block到其他DN。
HDFS读写流程
读流程
- 客户端发送请求
- Namenode返回所有block的位置信息,并将这些信息返回给客户端
- 客户端拿到block的位置信息后调用方法读取block信息
- datanode返回给客户端
写流程
- 客户端发送请求
- namenode根据以上信息算出文件需要切成多少块block,以及block要存放在哪个datanode上,并将这些信息返回给客户端。
- 客户端调用方法首先将其中一个block写在datanode上,每一个block默认都有3个副本,并不是由客户端分别往3个datanode上写3份,而是由已经上传了block的datanode产生新的线程,由这个namenode按照放置副本规则往其它datanode写副本
- 写完后返回给客户端一个信息,然后客户端在将信息反馈给namenode
HDFS备份机制
- 第一个block存储在负载不是很高的一台服务器
- 第一个备份的block存储在与第一个block不同的机架随机一条服务器上
- 第二个备份在与第一个备份相同的机架随机一台服务器
HDFS权限
依据Linux系统的用户系统 默认权限
HDFS安全模式
- 加载fsimage,加载到内存中
- 如果edits文件不为空,那么namenode自己来合并
- 检查DN的健康情况
- 如果有DN挂掉,指挥做备份
处于安全模式过程中,如果fsimage已经加载到内存中,可以查看到文件目录,但是无法读取处于安全模式过程中,如果fsimage已经加载到内存中,可以查看到文件目录,但是无法读取
大数据基础知识及分布式存储原理相关推荐
- hawk大数据基础知识总结(1)
一.大数据概述 1.1大数据的概念 大数据一共具有三个特征:(1)全样而非抽样:(2)效率而非精确:(3)相关而非因果. (1)在过去由于缺乏获取全体样本的手段,人们发明了"随机调研数据&q ...
- 大数据基础知识(下)
大数据基础知识:技巧与概念 大数据伦理 匿名方面的挑战 保密性方面的挑战 大数据的来源和结构 人类生成的数据 机器生成的数据 结构化数据 非结构化数据 存储大数据 分布式存储与云 云计算:IaaS.P ...
- 大数据_03【大数据基础知识】
大数据_03 [大数据基础知识] 01 大数据概述 02 什么是大数据?(Big Data) 03 传统数据与大数据的对比 04 大数据的特点 4.1 传统数据与大数据处理服务器系统安装对比 4.2 ...
- 大数据基础知识(上)
大数据基础知识:技巧与概念 什么是大数据 数量多 流转快 种类多 大数据需要具备全部三个特征吗? 如何使用大数据 了解消费者大数据 了解企业大数据 了解科学研究大数据 大数据与数据科学 大数据与小数据 ...
- 大数据_02【大数据基础知识】
大数据_02[大数据基础知识] 01 什么是服务器 02 服务器类型 03 存储磁盘(硬盘) 04 什么是RAID RAID特点 RAID种类 05 什么是集群 06 什么是计算机网络 07 什么是交 ...
- Big Data大数据基础知识
文章目录 大数据基础知识 什么是服务器? 服务器类型 什么是RAID 什么是集群? 为什么和谐号.复兴号会这么快? 大数据基础知识 内容概要 什么是服务器? 什么是RAID? 什么是集群? 什么是网络 ...
- 大数据基础知识全集,大数据爱好者收藏必备
目前,市场上的大数据产品太多,但远远低于IAAS的标准化水平,各产品之间的差异还不十分清楚.当许多公司正在制造大数据平台或大数据解决方案时,他们往往不知道选择哪些产品来满足他们的需求 ...
- 大数据基础知识科普(2)
上一篇<大数据基础知识科普(1)>为大家讲解了关于服务器,存储磁盘以及RAID的内容.这一篇将沿着之前的脚步,为大家带来更多学习大数据必须要掌握的知识! 目录 什么是集群? 什么是计算机网 ...
- 【大数据】大数据基础知识科普--数据分层
大数据基础知识科普–数据分层 (ETL.ODS.DW.DWD.DWM.DWS.DIM) 零.数据加载层:ETL(Extract-Transform-Load) 一.数据操作层:ODS(Operatio ...
最新文章
- rust门卡有什么用_Rust能力养成之(10)用Cargo进行项目管理:扩展 调用与优化
- php如何发起get网络请求,php发送get、post请求的几种方法
- 猫、交换机和路由器的区别
- 关节点和重连通分量,trajan算法实现(python)
- 「 ThoughtWorks面试 —— 一次愉快的技术交流 | 掘金技术征文」
- PHP中插件机制的一种实现方案
- Tips on rendering interiors
- NodeJS学习第一季-路由规则
- 关于SVN常用命令之export
- document.body.scrollTop值为0的解决方法[转]
- ubuntu14.04/Mint17上Gitolite的搭建过程
- 【FFmpeg命令】jpg与yuv(批量)互转
- php 解析p2p节目源,P2P加速解析与伪一次解析源码教程
- 坦克采样器加钢琴鼓组弦乐打击音源-IK Multimedia SampleTank 4 v4.1.4 + Library
- 如何给PPT加背景音乐
- 得意不张狂失败不气妥
- VLC-2.2.6命令行帮助文件
- 基于Attention_CNN_GRU的野生动物监测图像分类
- RPC服务和HTTP服务对比
- 如何搭建一套指标体系?