【大数据】HDFS概述(学习笔记)

news/2024/12/22 9:05:58/

一、文件系统、分布式文件系统

1、传统文件系统

文件系统是一种存储组织数据的方法,实现了数据的存储、分级组织、访问和获取等操作。

文件系统使用树形目录抽象逻辑概念代替了硬盘等物理设备使用数据块的概念。

数据:指存储的内容本身。这些数据底层是存储在存储介质上的,用户只需要基于目录树进行增删改查即可,实际针对数据的操作由文件系统完成。

元数据(解释性数据):记录数据的数据。

文件系统元数据:指文件大小、最后修改时间、底层存储位置、底层存储位置、属性、所属用户、权限等信息。

2、分布式文件系统

1)分布式存储

单机纵向扩展:磁盘不够加磁盘,有上限瓶颈限制

多机横向扩展:机器不够加机器,理论上无限扩展

2)元数据记录

元数据记录下文件及其存储位置信息,快速定位文件位置

3)分块存储

文件分块存储在不同机器,针对块并行操作提高效率

4)副本机制

不同机器设置备份,冗余存储,保障数据安全

二、HDFS简介

HDFS:Hadoop分布式文件系统。

  • HDFS作为大数据生态圈最底层的分布式存储服务而存在。
  • 大数据首先要解决的问题就是海量数据的存储问题
  • 分布式说明HDFS是横跨在多台计算机上的存储系统。
  • HDFS是一种能够在普通硬件上运行的分布式文件系统,它是高度容错的。
  • HDFS使用多台计算机存储文件,并且提供统一的访问接口

三、HDFS设计目标

HDFS具有故障检测和自动快速恢复。

HDFS用于批处理,而不是用户交互式的。(相较于数据访问的反应时间,更注重数据访问的高吞吐量。)

HDFS支持大文件,提供很高的聚合数据带宽。

write-one-read-many访问模型,文件不允许修改。简化了数据一致性问题,提高数据吞吐量。

移动计算的代价比之移动数据的代价低。一个应用请求的计算,离它操作的数据越近就越高效。将计算移动到数据附近,比之将数据移动到应用所在显然更好。

HDFS可从一个平台轻松移植到另一个平台。

四、HDTS重要特性

1、主从架构

HDFS集群是标准的master/slave主从架构集群。

HDFS集群是有一个Namenode和一定数目的Datanode组成。

Namenode是HDFS主节点,Datanode是HDFS从节点,两种角色各司其职,共同协调完成分布式的文件存储服务。

2、分块存储

HDFS中的文件在物理上是分块存储的,默认大小是128M ,不足128M则本身就是一块。

3、副本机制

文件的所有block都会有副本。副本系数可以在文件创建的时候指定,也可以在之后通过命令改变。

副本数由参数dfs.replication控制,默认值是3,也就是会额外再复制2份 ,连同本身总共3份。

4、元数据记录

1、文件自身属性信息:文件名称 权限,修改时间,文件大小,复制因子,数据块大小。

2、文件块位置映射信息:记录文件块和DataNode之间的映射信息,即哪个块位于哪个节点上。

5、目录树结构 Namespace

HDFS支持传统的层次型文件组织结构。

Namenode负责维护文件系统的namespace名称空间 ,任何对文件系统名称空间或属性的修改都将被Namenode记录下来。

HDFS会给客户端提供一个统一的抽象目录树


http://www.ppmy.cn/news/1150118.html

相关文章

mybatis拦截器源码分析

mybatis拦截器源码分析 拦截器简介 mybatis Plugins 拦截器由于Mybatis对数据库访问与操作进行了深度的封装,让我们应用开发效率大大提高,但是灵活度很差拦截器的作用:深度定制Mybatis的开发抛出一个需求 :获取Mybatis在开发过程中执行的SQL语句(执行什么操作获取那条SQL语句…

Python还有什么赋值?Python赋值语句的多种形式

Python是一种强大且灵活的编程语言,其赋值语句的多样性是其特色之一。除了常见的变量赋值,Python还支持许多其他赋值方式,包括多重赋值、增量赋值以及解包赋值等。在本文中,我们将深入探讨Python中赋值语句的多种形式,…

网络安全(黑客技术)—自学手册

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高; 二、则是发展相对成熟…

【应用】OPC 通讯协议

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 【应用】OPC 通讯协议 Chapter1【应用】OPC 通讯协议OPC 通讯协议基础利用驱动器的系统连接利用 OPC 控制的系统组成 OPC 与 OPC UA Chapter1【应用】OPC 通讯协议 原文链接…

数据库常见面试题--MySQL

梳理面试过程中数据库相关的常见问题,需要说明的是,这篇文章主要是基于MySQL数据库,其他类型的数据库还请自行参考使用。 数据库概述 为什么使用数据库 1、数据库增删改查更方便 2、提供了事务的能力 本质是更好的管理数据。 数据库体系结…

elasticsearch深度分页问题

一、深度分页方式from size es 默认采用的分页方式是 from size 的形式,在深度分页的情况下,这种使用方式效率是非常低的,比如我们执行如下查询 1 GET /student/student/_search 2 { 3 "query":{ 4 "match_all":…

【SpringCloud】Nacos的安装、Nacos注册、Nacos服务多级存储模型

🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 Nacos 一、 Nacos安装(基于Wind…

Ubuntu 18.04 OpenCV3.4.5 + OpenCV3.4.5 Contrib 编译

目录 1 依赖安装 2 下载opencv3.4.5及opencv3.4.5 contrib版本 3 编译opencv3.4.5 opencv3.4.5_contrib及遇到的问题 1 依赖安装 首先安装编译工具CMake,命令安装即可: sudo apt install cmake 安装Eigen: sudo apt-get install libeigen3-…