大数据基础知识及分布式存储原理

分布式存储 HDFS原理 大数据基础知识 一、什么是大数据 短时间内快速产生的海量的多种多样的有价值的数据。 大数据技术: 1、分布式存储: 2、分布式计算: 1)分布式批处理: 当数据积累一定的时间后(假设一个月),进行统一的处理。 2)分布式流处理 分布式流处理是一个实时的处理。即数据生成后立即处理。 例子: 11.11天猫大屏幕 QQ实时在线的分布情况 3、机器学习 凡是预测类的都是机器学习。 分布... 阅读详情

什么是大数据(Big Data)

大数据概念

大数据是指海量数据或巨量数据,其规模巨大到无法通过目前主流的计算机系统在合理时间内获取、存储、管理、处理并提炼以帮助使用者决策。
短时间内快速的产生海量的多种多样的有价值的数据。

大数据技术:

分布式存储

分布式计算

  1. 分布式批处理
    攒一段时间的数据,然后再未来某一个时间来处理这批数据

  2. 分布式流处理(实时处理)
    数据不需要积攒,直接处理,每产生一条数据,立马对这条数据进行处理,将结果推送到前端,如双十一的天猫大屏幕,qq实时在线分布情况

  3. 机器学习

分布式存储

HDFS

HDFS(Hadoop Distributed File System)是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的,可以运行于廉价的商用服务器上。它所具有的高容错、高可靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存储,为超大数据集(Large Data Set)的应用处理带来了很多便利。

HDFS原理

Client(客户端)
  1. 文件切分。文件上传 HDFS 的时候,Client 将文件切分成 一个一个的Block,然后进行存储。
  2. 与 NameNode 交互,获取文件的位置信息。
  3. 与 DataNode 交互,读取或者写入数据。
  4. Client 提供一些命令来管理 HDFS,比如启动或者关闭HDFS。
  5. 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。
并不是所有元数据都会持久化
合并触发机制:

  1. 超过3600ms
  2. edits文件超过64mb
DataNode

主要功能:存储数据块(block)默认大小为128mb
DN启动时会向NN汇报block信息,并且之后通过向NN发送心跳保持联系(3秒一次),如果NN在10分钟内没有收到DN的心跳,就认为该DN已经lost,并copy其上的block到其他DN。

HDFS读写流程

读流程

hdfs读流程

  1. 客户端发送请求
  2. Namenode返回所有block的位置信息,并将这些信息返回给客户端
  3. 客户端拿到block的位置信息后调用方法读取block信息
  4. datanode返回给客户端
写流程

hdfs写流程

  1. 客户端发送请求
  2. namenode根据以上信息算出文件需要切成多少块block,以及block要存放在哪个datanode上,并将这些信息返回给客户端。
  3. 客户端调用方法首先将其中一个block写在datanode上,每一个block默认都有3个副本,并不是由客户端分别往3个datanode上写3份,而是由已经上传了block的datanode产生新的线程,由这个namenode按照放置副本规则往其它datanode写副本
  4. 写完后返回给客户端一个信息,然后客户端在将信息反馈给namenode

HDFS备份机制

  1. 第一个block存储在负载不是很高的一台服务器
  2. 第一个备份的block存储在与第一个block不同的机架随机一条服务器上
  3. 第二个备份在与第一个备份相同的机架随机一台服务器

HDFS权限

依据Linux系统的用户系统 默认权限

HDFS安全模式

  1. 加载fsimage,加载到内存中
  2. 如果edits文件不为空,那么namenode自己来合并
  3. 检查DN的健康情况
  4. 如果有DN挂掉,指挥做备份
    处于安全模式过程中,如果fsimage已经加载到内存中,可以查看到文件目录,但是无法读取处于安全模式过程中,如果fsimage已经加载到内存中,可以查看到文件目录,但是无法读取
存储基础知识分享 本文分享了存储硬件基础知识和主流存储技术。首先介绍了磁带、光盘、磁盘等存储介质,详细讲解了机械硬盘和SSD的结构特点,以及SATA、SCSI等磁盘接口协议。然后重点解析了RAID技术原理、级别和应用场景,对比了SAN和NAS架构特点。在然后阐述了分布式文件系统分类(文件存储、块存储、对象存储),并分析了HDFS、GlusterFS、Ceph等主流分布式存储系统的优缺点。最后讨论了存储性能指标(IOPS、吞吐量)、RAID写惩罚、存储可靠性等关键技术要点。全文系统梳理了从底层硬件到上层架构的存储知识。 阅读详情

相关推荐

大数据领域分布式存储的核心原理深度剖析

所有节点在同一时间看到的数据是。

架构师的AI之路,分享AI应用开发架构的学习与实践。 893

分布式数据存储原理简介

什么是分布式数据存储系统 分布式存储系统的核心逻辑,就是将用户需要存储的数据根据某种规则存储到不同的机器上,当用户想要获取指定数据时,再按照规则到存储数据的机器里获取。 如下图所示,当用户(即应用程序)想要访问数据 D,分布式操作引擎通过一些映射方式,比如 Hash、一致性 Hash、数据范围分类等,将用户引导至数据 D 所属的存储节点获取数据。 静下心来想一下,获取数据的整个过程与你到商店...

m0_37607365的博客 8490

大数据领域分布式存储的数据归档策略

大数据环境下,数据的存储和管理面临着巨大的挑战。数据量的快速增长使得存储成本不断攀升,同时,不同类型和用途的数据对存储性能、可用性和安全性的要求也各不相同。本文章的目的在于探讨分布式存储环境下的数据归档策略,以帮助企业和组织更有效地管理大数据,优化存储资源,降低成本,提高数据的可访问性和可用性。本文的范围涵盖了大数据领域分布式存储的基本概念、数据归档的核心原理、常见的数据归档算法和策略、相关的数学模型和公式,以及实际的项目案例和应用场景。

大数据洞察的博客 1170

大数据之分布式理论

文章目录1. 分布式理论基础1.1. 2PC和3PC(解决一致性)1.1.1. 一致性是什么1.1.2. 一致性的两个属性(无法同时保证)1.1.3. 3PC(三阶段提交)1.2. CAP定理1.2.1. CAP描述1.2.2. CAP分析1.2.3. 总结1.3.逻辑时钟1.3.1 Lamport timestamp1.3.2 Vector timestamp1.3.3 Version timestamp 1. 分布式理论基础 1.1. 2PC和3PC(解决一致性) 1.1.1. 一致性是什么 一致性问题

qq_38815481的博客 1311

大数据分布式存储原理

大数据基础 1.什么是大数据 短时间内快速的产生海量的多种多样的有价值的数据 2.大数据技术 2.1 分布式存储 2.2 分布式计算 ① 分布式批处理(无法实现预测) 存一段时间的数据,等到将来某一时刻时再进行处理 ② 分布式流处理(实时处理)(无法实现预测) 数据不需要攒,直接处理,每产生一条数据,立马对这条数据进行处理。 2.3 机器学习 可以实现预测 3.分布式存储原理 3.1主要概念:元数...

dmbds20的博客 5895

大数据分布式系统原理概述

一、分布式系统的理论 1、CAP原理   CAP原理指的是,一致性(Consistency)、可用性(Availability)、分区容忍性(Partition tolerance)这三个要素最多只能同时实现两点,不可能三者兼顾。因此在进行分布式架构设计时,必须做出取舍。而对于分布式数据系统,分区容忍性是基本要求 ,否则就失去了价值。因此设计分布式数据系统,就是在一致性和可用性之间取一个平衡。...

wenxinfly的专栏 3700

大数据存储原理

MySQL数据库连接密码Mysql123456### 虚拟机用户名和密码naya:3xroot 虚拟机(virtual machine),就是通过软件技术虚拟出来的一台计算机。常见的虚拟机软件有 VMware Workstation(简称 VMware)、VirtualBox、Microsoft Virtual PC 等,其中 VMware 市场占有率最高,我们使用 VMware进行 Linux 的安装,Vmware 可以同时运行多个操作系统,可以像 Windows 应用程序一样来回切换。下载好VMware

的博客 523

大数据之初步了解HDFS、Hadoop和MapReduce

想学好大数据,首先要了解他的基础,所以,我们需要先了解HDFS和Hadoop以及MapReduce。 首先大家思考一个问题:如何合理的存储10T的电信通话记录? 下面给大家展现一个图片: 入的知识点: 元数据:描述数据的数据,主要描述数据的属性的信息,用来指示存储位置,历史数据文件查找和文件记录等功能; NameNode:文件管理 DataNode:真是存储数据,数据存储 ...

大数据领航者 269

数字电路数据选择器及其应用实验报告_岂止于大,一文读懂大数据及其在推荐系统的应用...

本系列文章将从最简单的概念开始,逐步讲解推荐系统的发展历程和最新实践。以产品经理的视角,阐述推荐系统涉及的算法,技术和架构。本章是第三章,将系统性地介绍推荐系统的基石之一:大数据大数据是数据智能时代的“铁公基”,是一系列计算和存储的基础设施。推荐系统也是建立在大数据的基础之上的,大量的数据挖掘和模型训练都离不开大数据大数据这个名词起的很好,对于非技术人员来说也能get到大的含义:数据量大,算力...

weixin_39816362的博客 840

hadoop快速入门,我们究竟还要学习哪些大数据开发知识

hadoop fs -mv [-p] hdfs路径 hdfs路径。hadoop fs -put -f -p linux路径 hadoop路径。hdfs dfs -mv [-p] hdfs路径 hdfs路径。hdfs dfs -put -f -plinux路径 hadoop路径。hadoop dfs -rm [-r] [-f] hdfs路径。hdfs dfs -sp hadoop路径 hadoop路径。hdfs dfs -rm [-r] [-f] hdfs路径。

2401_84164672的博客 966

大数据领域分布式存储分布式存储网络优化

大数据时代,数据量呈现出爆炸式增长,传统的集中式存储方式已难以满足数据存储和管理的需求。分布式存储系统凭借其可扩展性、高可用性和容错性等优势,成为大数据存储的主流解决方案。然而,分布式存储网络中的数据传输瓶颈、网络拥塞等问题严重影响了系统的性能。本文的目的在于深入探讨分布式存储网络优化的方法和策略,涵盖网络拓扑优化、数据传输协议优化、负载均衡算法优化等多个方面,以提高分布式存储网络的性能和效率。本文将首先介绍分布式存储网络的核心概念和相关联系,包括分布式存储的基本原理、网络拓扑结构等。

架构师的AI之路,分享AI应用开发架构的学习与实践。 1186

一文看透大数据分布式存储技术本质与应用价值

通过本文,我们不仅“看透”了分布式存储技术本质——它不是“黑科技”,而是通过算法(如一致性哈希、Raft)和架构(如集群化、分层存储)解决“数据管理难题”的工程实践;云对象存储的底层仍是分布式存储集群(如AWS S3基于自研的分布式系统,阿里云OSS基于飞天分布式存储),但通过“服务化”包装(API、控制台、SDK)屏蔽了底层复杂度,让用户“开箱即用”。(容错、一致性、扩展性),再通过主流系统(HDFS、Ceph、云存储)的深度对比,揭示其“能存、能保、能用、能扩”的底层逻辑。

AI大模型应用之禅 867

大数据技术原理与应用——大数据存储与管理

大数据技术原理与应用——大数据存储与管理 1.分布式文件系统 (1)计算机集群结构 集群的概念 集群是指将多台服务器整合在一起,每台服务器都实现相同的业务,做相同的事情。 每台服务器并不是缺一不可,它存在的作用主要是:   缓解并发压力、提升计算性能   单点故障转移问题 传统版集群结构示意 1.传统集群使用多个处理器和专用高级硬件的并行化处理装置 2.紧密/集中构造 阿姆达尔定律——并行度和可...

linjiayina的博客 1万+

大数据-数据仓库(原理+实战)

数据仓库原理+项目实战

weixin_43952924的博客 2494

大数据学习的第一课-大数据概论和技术原理

大数据(Big Data),指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。采用分步式的方式存储数据时,要考虑数据复制时一致性问题,数据复制与一致性基本原则和设计理念CAP 、ACID 、BASE 等。典型的Hadoop 的HDFS存储框架采用文件拆分存储在多个结点,每个拆分出的文件存储3个副本的形式存储。大数据就像矿石,需要汇聚,清洗 ,分析 ,挖掘等处理才能发挥蕴含的价值。

莫浅子的博客 4686

大规模数据环境下的分布式数据存储

分布式数据存储是在大数据背景下应对海量数据存储和处理需求的重要解决方案。分布式数据存储系统的设计和实现需要考虑数据分片、数据一致性、故障恢复等方面的障恢复等方面的问题,以保证系统的可靠性和稳定性。分布式数据存储是指将数据分散存储在多个节点上,每个节点存储部分数据,通过网络连接进行数据交互和协作,从而达到可扩展性、高可用性和性能优化的存储方案。分布式数据存储系统通常由多个存储节点组成,每个节点都具有存储和处理数据的能力。本文将介绍分布式数据存储的概念、特点以及一些常见的实现方式,并提供相关的源代码示例。

2301_79366435的博客 277

大规模分布式存储(3)-- 数据分布与负载均衡

分布式存储系统能够将数据分布到多个节点,并在多个节点之间进行负载均衡。本文就围绕数据分布和负载均衡,探讨数据分布算法需要考虑的因素、常见的数据分布算法、负载均衡算法等,以期我们在自己设计开发一个新的分布式存储系统时,能够对这些方面有全面的考虑。 一、 数据分布 在介绍常见的数据分布算法前,我们首先来思考一个问题:对数据进行分布时需要考虑什么? 不管是key-value存储、对象存储、块存储、还是列存储等其他类型的存储系统,对这个问题的回答几乎是一致的。下文将介绍在分布式存储系统中做数据分布目标及可选的方案,

LifeIsGood 765

黑马程序员-大数据入门到实战-HDFS分布式存储

1. 为什么需要分布式存储 2. 分布式的基础架构分析 3. HDFS的基础架构 4. HDFS集群环境部署 4.1 VMware虚拟机中部署 4.1.1 集群规划 4.1.2 上传解压 4.1.3 Hadoop安装包目录结构 4.1.4 修改配置文件 4.1.5 准备数据目录 4.1.6 分发Hadoop文件夹 4.1.7 配置环境变量 4.1.8 格式化整个文件系统 5. HDFS的Shell操作 5.1 进程启停管理 5.1.1 一键启停脚本 5.1.2 单进程启停 5.2 文件系统操作命令

AIGC 1110
下一篇: 分布式存储(hdfs)思维导图
thyyyyyyy
博客等级 码龄8年 16粉丝 15原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值