加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Hadoop系列——企业存储系统概述,HDFS概述day2-2

发布时间:2022-11-26 01:35:10 所属栏目:大数据 来源:未知
导读: Hadoop系列——企业存储系统概述,HDFS概述day2-2
企业存储系统 数字经济
人类通过大数据(数字化的知识与信息)的识别一选择—过滤—存储—使用,引导、实现资源的快速优化配置与再生,实

Hadoop系列——企业存储系统概述,HDFS概述day2-2

企业存储系统 数字经济

人类通过大数据(数字化的知识与信息)的识别一选择—过滤—存储—使用,引导、实现资源的快速优化配置与再生,实现经济高质量发展的经济形态。

产业互联网推动发展

企业开始进行数字化转型,将传统的业务流程进行数字化改造。

改造的目的降低成本、进行资源精准配置、提升效率、增加附加值(数字资产)。整合企业内外部数据,以数据来支撑精细化运营。

磁盘

磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。

早期计算机使用的磁盘是软磁盘( Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk ,简称硬盘)

硬盘

硬盘(Hard Disk Drive )是计算机的主要存储硬件,可以用来存储数据。目前(2020年),市面上比较流行的硬盘多数是TB级的。

分类

机械硬盘( HDD )、固态硬盘( SSD )、混合硬盘(SSHD )

磁盘阵列(RAID)

磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,并在存储性能上、容错上会有一定地提升。RAID是一类多磁盘管理技术,其向主机环境提供了成本适中、数据可靠性高的高性能存储。

存储架构 DAS存储架构

DAS存储架构也称为直连式存储(Direct-Attached Storage ),存储设备是通过电缆(通常是SCSI接口电缆)直接挂到服务器总线上。DAS比较依赖操作系统来进行IO操作。

在这里插入图片描述

NAS存储架构

NAS也称为网络接入存储(Network-Attached Storage ),存储设备通过标准的网络拓扑结构(例如以太网)连接,采用NS较多的功能是用来文档共享、图片共享、电影共享等等,而且随着云计算的发展,一些NAS厂商也推出了云存储功能,大大方便了企业和个人用户的使用。

在这里插入图片描述

SAN存储架构

SAN存储区域网络存储

SAN ( Storage Area Network )是一种高速的、专门用于存储操作的网络,通常独立于计算机局域网(LAN )。SAN将主机和存储设备连接在一起,能够为其上的任意一台主机和任意一台存储设备提供专用的通信通道。

SAN将存储设备从服务器中独立出来,实现了服务器层次上的存储资源共享。

在这里插入图片描述

文件系统

是一种存储和组织数据的方法,它使得对文件访问和查找变得容易

使用文件和树形目录的抽象逻辑概念代替了硬盘等物理设备使用数据块的概念,用户使用文件系统来保存数据不必关心数据底层存在硬盘哪里,只需要记住这个文件的所属目录和文件名。

文件系统通常使用硬盘和光盘这样的存储设备,并维护文件在设备中的物理位置。

文件名

DOS操作系统中文件名由文件主名和扩展名组成,之间以一个小圆点隔开

文件名可用于用于定位存储位置、区分不同文件,计算机实行按名存取的操作方式

某些符合因有其特殊含义,一般不允许出现在文件名中

同一级中不可出现相同的文件名

元数据

元数据(metadata )又称之为解释性数据,记录数据的数据

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

文件系统分类 基于磁盘的文件系统:是在非易失介质上(磁盘、光盘)存储文档的经典方式。用以在多次会话之间保持文件的内容。包括Ext2/3/4、XPS、NTFS、FAT和iso9660等众所周知的文件系统。Linux中可以使用df -Th查看。虚拟文件系统:在内核中生成的文件系统,比如proc。proc文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在Linux内核空间和用户间之间进行通信。网络文件系统:网络文件系统(NFS,Network File System )是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制。允许本地计算机访问另一台计算机上的数据,对此类文件系统中文件的操作都通过网络连接进行。 海量数据存储出现的问题 成本高:传统存储硬件通用性差,设备投资加上后期维护、升级扩容的成本非常高。性能低:单节点I/0性能瓶颈无法逾越,难以支撑海量数据的高并发高吞吐场景。可扩展性差:无法实现快速部署和弹性扩展,动态扩容、缩容成本高,技术实现难度大。如何支撑高效率的计算分析:传统存储方式意味着数据存储是存储,计算是计算,当需要处理数据的时候把数据移动过来。程序和数据存储是属于不同的技术厂商实现无法有机统一整合在一起。 分布式文件存储问题 解决海量数据存储问题

传统做法是在单机存储。但是随着数据变多,会遇到存储瓶颈。

单机纵向扩展︰内存不够加内存,磁盘不够加磁盘。有上限限制,不能无限制加下去。

多机横向扩展∶采用多台机器存储,一台不够就加机器。理论上可以无限。

多台机器存储也就意味着迈入了分布式存储。

解决海量数据文件查询问题

借助于元数据记录来解决这个问题。把文件和其存储的机器的位置信息记录下来,类似于图书馆查阅图书系统,这样就可以快速定位文件存储在哪一台机器上了。

在这里插入图片描述

解决大文件传输效率慢问题

使用分块存储︰把大文件拆分成若干个小块( block 简写blk ),分别存储在不同机器上,并行操作提高效率。

此外分块存储还可以解决数据存储负载均衡问题。此时元数据记录信息也应该更加详细︰文件分了几块,分别位于哪些机器上。

硬件故障导致数据丢失问题

机器、磁盘等硬件出现故障是难以避免的事情,如何保证数据存储的安全性。如果某台机器故障,数据块丢失,对于文件来说整体就是不完整的。冗余存储是个不错的选择。采用副本机制。副本越多,数据越安全,当然冗余也会越多。通过"不要把鸡蛋放在一个篮子里”的思想,可以把数据丢失的风险分散到各个机器上。

在这里插入图片描述

用户视角统一问题

随着存储的进行,数据文件越来越多,与之对应元数据信息也越来越多,如何让用户视觉层面感觉不到元数据的凌乱,同时也与传统的文件系统操作体验保持一致?传统的文件系统拥有所谓的目录树结构,带有层次感的namespace (命名空间),因此可以把分布式文件系统的元数据记录这一块也抽象成统一的目录树结构。

在这里插入图片描述

分布式文件系统HDFS概述

HDFS(Hadoop Distributed File System ),意为:Hadoop分布式文件系统。是Apache Hadoop核心组件之一,作为大数据生态圈最底层的分布式存储服务而存在。

分布式文件系统解决大数据如何存储问题。分布式意味着是横跨在多台计算机上的存储系统。

HDFS是一种能够在普通硬件上运行的分布式文件系统,它是高度容错的,适应于具有大数据集的应用程序,它非常适于存储大型数据(比如TB和PB)。

HDFS使用多台计算机存储文件,并且提供统一的访问接口,像是访问一个普通文件系统一样使用分布式文件系统。

HDFS的设计目标

硬件故障(Hardware Failure )是常态,HDFS可能有成百上千的服务器组成,每一个组件都有可能出现故障。因此故障检测和自动快速恢复是HDFS的核心架构目标。

HDFS上的应用主要是以流式读取数据(Streaming Data Access )。HDFS被设计成用于批处理,而个是用尸父旦式的。相较于数据访问的反应时间,更注重数据访问的高吞吐量。

典型的HDFS文件大小是GB到TB的级别。所以,HDFS被调整成支持大文件( Large Data Sets)。它应该提供很高的聚合数据带宽,一个集群中支持数百个节点,一个集群中还应该支持千万级别的文件。

大部分HDFS应用对文件要求的是write-one-read-many访问模型。一个文件一旦创建、写入、关闭之后就不需要修改了。这一假设简化了数据一致性问题,使高吞吐量的数据访问成为可能。

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

HDFS应用场景 大文件数据流式访问—次写入多次读取低成本部署,廉价PC高容错 HDFS的主从架构

HDFS采用master/slave架构。一般一个HDFS集群是有一个Namenode和一定数目的Datanode组成。Namenode是HDFS主节点,Datanode是HDFS从节点,两种角色各司其职,共同协调完成分布式的文件存储服务。

HDFS分块存储机制

HDFS中的文件在物理上是分块存储( block )的,块的大小可以通过配置参数来规定,参数位于hdfs-default.xml中: dfs. blocksize。默认大小是128M

HDFS副本机制

文件的所有block都会有副本。每个文件的block大小 ( df’s.blocksize )和副本系数(dfs.repl1cation ) 日足中凯置的。副本系数可以在文件创建的时候指定,也可以在之后通过命令改变

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

HDFS命名空间

HDPS支持传统的层次型文件组织结构。用户可以创建目录,然后将文件保存在这些目录里。文件系统名字空间的层次结构和大多数现有的文件系统类似︰用户可以创建、删除、移动或重命名文件。

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

HDFS会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如: hdfs://namenode:port/dir-a/dir-b/dir-c/file. data

HDFS元数据管理

在HDFS中,Namenode管理的元数据具有两种类型

文件自身属性信息

文件名称、权限,修改时间,文件大小,复制因子,数据块大小

文件块位置映射信息

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

HDFS数据块存储

文件的各个block的具体存储管理由DataNode节点承担。每一个block都可以在多个DataNode上存储。

在这里插入图片描述

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!