HDFS架构[官网整理]

hdfs官方设计文档(中文) Hadoop 分布式文件系统 (HDFS)是一个设计为用在普通硬件设备上的分布式文件系统。它与现有的分布式文件系统有很多近似的地方,但又和这些文件系统有很明显的不同。HDFS是高容错的,设计为部署在廉价硬件上的。HDFS对应用程序的数据提供高吞吐量,而且适用于那些大数据集应用程序。HDFS开放了一些POSIX的必须接口,容许流式访问文件系统的数据。HDFS最初是为了Apache 的Nutch网络搜索引擎项目的下层构件而设计的。是Hadoop项目的一部分,而这又是Apache的 Lucene项目的一部分。本项目的地址是:http://projects.apache.org/projects/hadoop.html。 立即下载

【HDFS Architecture(2.2+)】

    HDFS是一个分布式文件系统,可以运行在廉价的商用机器上。它与现有的其他分布式文件系统有很多相似之处,当然也有很多不同之处。HDFS具有较高的容错性,适用于存储较大集合的数据,并能够支撑较高的吞吐能力。HDFS放宽了一些POSIX要求,以能够流式的访问数据。

 

 

一、硬件故障

    硬件故障是常见的,而不是例外;一个HDFS集群或许有成百上千台机器构成,每台存储文件系统的一部分数据,事实上,一个集群有大量的组件,而且每个组件都有一定的故障概率,这也意味着总是会有一些组件无法正常工作,因此,故障检测和快速恢复它们,将是HDFS架构目标的核心。

 

二、流式数据访问

    运行在HDFS之上的应用,需要流式访问它们的数据。HDFS更倾向于批量处理,而不是用户交互式操作;更偏重于数据访问的吞吐能力而不是延迟。POSIX有很多硬性要求,但是对HDFS的设计目标而言是不必要的,在一些关键点上,牺牲了POSIX原有的语义,以提高数据吞吐能力。

 

三、大数据集合

    运行在HDFS上的应用,通常有较大的数据集合,一个文件的尺寸可达数GB,不过HDFS擅长于大文件存储。在一个集群中它需要提供较高的数据带宽和节点规模,它还需要支撑文件数以万计的文件。

 

四、简单的一致性模型

    HDFS应用需要一次写入多次读取(write-once-read-many)的文件访问模型,一旦文件创建、写入数据、关闭后,它不需要再次修改,这种假设简化了数据一致性问题,而且在数据访问时有较高的吞吐能力。Map/Reduce应用或者web爬虫应用非常适合这种模式,我们将来计划支持对文件的appending-writes(2.2+已经支持)。

 

五、“Moveing Computation is Cheaper than Moving Data”

    如果计算程序和它所需要的数据临近,那么执行效率将是更加高效的,即使当数据规模庞大时仍然一样。这可以最小化网络阻塞和提升系统整体的吞吐能力。迁移计算程序,让其临近所需数据,而不是将数据移动到计算程序的地方。HDFS提供大量的应用接口,移动移动计算程序让其临近数据。

 

六、Namenode与Datanodes

    HDFS为master/slaves架构(不是严格意义上的M-S),HDFS集群包含一个Namanode,它作为master来管理文件系统的namespace和控制Client对文件的存取。此外,还有一定数量的Datanodes,一般为每个node一个,它们管理其上的数据存储;HDFS暴露文件系统的namespace,允许用户数据存储在文件中。其内部实现为,一个文件(HDFS File)被切分成多个blocks,这些blocks分别存在集群中的多个Datanodes。Namenodes执行一些文件系统namespace有关的操作,例如opening、closing、renaming文件或者目录;它还保存了blocks与Datanodes的映射(位置关系)。Datanodes的职责是服务于Client的read、write请求,它也根据Namenode的指令运行block的创建、删除、replication等。

 

 

     Namode和Datanodes均可以运行在商用机器上,这些机器通常为LINUX系统,HDFS使用java语言构建,任何支持java平台的机器都可以运行Namenode和Datanodes,java语言的高移植性意味着HDFS可以大范围的部署。一个典型的部署方式,是Namenode部署在一个单独的机器上,其他的每个机器运行一个Datanode实例,不排除一台机器可以运行多个Datanodes,不过实际环境中我们很少这么做。

 

    集群只有一个Namenode是大大简化了系统的架构,Namenode作为一个arbitrator负责HDFS的metadata(不保存实际文件数据),系统的这种设计,用户数据不会流经Namenode。

 

七、文件系统Namespace

    HDFS支持传统的分级文件组织。应用程序可以创建目录,并将文件存储在这些目录中。文件系统的namespace层次和现有的文件系统类似;可以创建和删除文件,将文件在目录间移动,或者重命名文件。HDFS尚未完全实现用户配额(user Quotas)和访问权限。HDFS不支持hard links或者soft linkes,或许将来会实现。

 

    Namenode维护文件系统的Namespace,nanespace的任何改动或者文件系统properties修改都会被namenodes记录。应用程序可以指定一个文件的replicas的个数,这个属性需要被HDFS保存。一个文件副本的个数,称之为“replication factor”,这个信息会保存在Namenode上。

 

八、Data Replication

    HDFS被设计成在大规模集群中可靠的存储大文件数据。它将每个文件分割成一序列Blocks来存储;一个文件除最后一个block外(正在被写入),其他的所有的blocks文件尺寸都一样,这些blocks为容错(fault tolerance)都会被replicated。每个文件都可以配置各自的block大小和replication factor,应用程序可以为文件指定这些参数。“replication factor”可以在文件创建时指定,也可以在稍后修改(block size在文件创建后不能修改)。HDFS中的文件时write-once,而且任何时候只能有一个writer(Client端可以对一个文件并发的写,但是所有的写入数据都会队列化到一个Datanode的pipeline中,writer即为这个Datanode)。

 

    在Block replicating时,所有的决定都有Namenode来做。它间歇性的从Datanodes接收heartbeat和Blockreport,以确定Datanodes运行良好。Blockreport包含Datanode上所有的blocks列表。



 

九、Replicas Placement

    Replicas的放置是对HDFS可靠性和性能有重要影响。rack-aware放置策略的目的是提高数据的可靠性、可用性,以及带宽的利用。

    大规模HDFS集群中,数据通常分布在不同rack上的多个机器上,不同rack上的两个nodes之间通信将会跨越多个switches,在多数情况下,同一个rack上的两个机器间的带宽比跨rack的两个机器带宽要高。

 

    Namenode可以判断出每个Datanode所属的rack ID(参见Hadoop Rack Awareness)。一个简单而非最优的策略,就是将replicas放置在不同的rack上,当某个rack整体失效时可以避免丢失数据,而且可以在read数据时使用多个rack的带宽。这种策略将replicas在集群中均匀的分布,在组件失效时可以简单的实现balance  load;不过这种策略,将会增加write数据的开支,因为write需要将blocks在多个rack间传输。

 

    一般情况下,replication factor为3,HDFS replicas放置策略是将一个replica放在当前rack的一个node上,第二个replica放置在当前rack的另一个node上,第三个replica放置在其他rack的一个node上。这种策略降低了rack间write传输,提高了write的性能。rack失效的几率要远小于node的失效;这种策略不会影响数据的可靠性和可用性保证。不过,相对于三个不同的rack放置,它降低了read数据时整体带宽的使用。这种策略下,replicas没有均匀的在racks间分布。三分之一的replicas在一个node上,三分之二的replicas在另外的一个rack上。这种策略在没有影响数据可靠性和read性能的前提下,提高了write性能。

 

十、Replicas Selection

    为了最小化全局的带宽消耗和read延迟,HDFS尽力将read请求读取离reader最近的replica。如果在reader节点所在的rack上存在replica,那么此replica将会优先选择。如果HDFS集群跨度多个data center,那么本地data center上的replicas将会比远端的data center优先。

 

十一、Safemode

    在集群启动时,Namenode进入一个特殊的状态:safemode(安全模式)。在safemode时,blocks replcations不会发生。Namenode接收Datanodes的心跳和blockreport。blockreport包含当前Datanode持有的blocks列表。每个block都设定了最小replication个数,当Namenode接入了当前block最小个数的replication报告后,那么此block被认为是safely replicated。此后,当“safely replicated” blocks的个数达到了配置的百分比后(还有一个额外的30秒,参见dfs.namenode.safemode.extension),Namenode即可退出safemode。然后Namenode将那些blocks个数是否小于指定的“replicas个数”的blocks,在其他Datanodes上备份它们。

 

十二、文件系统Metada

    HDFS namespace保存在namenode上。Namenode使用一种称为Editlog的transaction log持久保存文件系统的变更记录。例如,在HDFS上创建一个新文件将会导致Namenode在Editlog中插入一条记录来标识它。类似,修改一个文件的replication factor也会在Editlog中插入一条记录。Namenode使用操作系统文件系统的本地文件来存储Editlog。整个文件系统的namespace,包括文件与blocks映射关系,文件系统的属性(properties),保存在一个称为FsImage的文件中。Fsimage保存为namenode一个本地文件。

 

    Namenode在内存中保存整个文件系统的namespace和blockmap(映射关系)。这些关键的metada设计紧凑,因此一个4G内存的Namenode可以支撑大量的文件和目录(的metadata)。当Namenode启动时,它会从磁盘读取Fsimage和Editlog,然后在内存中应用它们(重放),然后flush到磁盘生成一个新version的Fsimage文件。它可以删除那些旧的Editlog,因为Editlog中的transaction log已经应用并保存在了新的Fsiamge文件中;这个过程称为Checkpoint,checkpoint之后在Namenode启动时触发,将来可能会支持运行时间歇性的checkpoint。(参见backup node机制)

 

    Datanodes将HDFS 数据保存在本地文件系统的文件中。Datanode对HDFS 文件并不知情(只关注block层面),它将HDFS block作为一个本地文件存储。Datanodes并不会在同一个目录下创建所有的本地文件,因为本地文件系统可能不会高效的支持在一个目录下存储巨大数量的本地文件(参见Block quota)。当Datanode启动时,它会扫描本地文件系统,整理出所有blocks的清单,并将此信息发送给Namenode,这就是Blockreport。

 

十三、交互协议

    所有的HDFS交互协议都是基于TCP/IP协议的,Client使用配置的TCP地址和端口与Namenode建立链接,这称为ClientProtocol。Datanodes与Namenode通信使用DataNodeProtocol。

 

十四、健壮性

    HDFS主要目的就是可靠的存储数据,即使有故障发生。三种常见的故障:Namenode失效,Datanode失效,网络分区(Network partitions)。

 

十五、磁盘故障、心跳和Re-replication

    每个Datanode都间歇性的向Namenode发送心跳消息。网络分区可能会导致部分Datanodes与Namenode失去链接。Namenode能够通过心跳来检测到这种情况。Namenode将那些一段时间内没有发送心跳的Datanodes标记为“dead”,不会向它们转发任何IO请求;那些注册在Dead DataNodes上的数据也将不可用。DataNode死亡,将会导致部分blocks的replicas个数低于相应文件指定的“replication factor”。Namenode将会持续跟踪这些需要被replicated blocks,并在需要的时候re-replication。Re-replication的必要性有多种原因引起:一个Datanode不可用,一个replica损坏,一个Datanode上的某个磁盘失效,或者一个文件的replication factor提高。

 

十六、Reblancing

    HDFS架构能够和数据rebalancing scheme相容。当一个Datanode上的磁盘剩余空间低于阀值时,将会把数据移动到其他Datanodes上。对于一个特定的文件,突然有较高的存储要求时(比如大批量数据写入),scheme将会动态的创建额外的replicas,以及在集群中rebalance。

 

十七、Data Integrity

    从Datanode上获取的block可能在收到时已经损坏,这种损坏可能因为存储设备的故障、网络故障、或者软件的bug。HDFS Client实现了checksum来校验HDFS文件内容的完整性。当Client创建一个HDFS文件时,它会计算每个block的Checksum,然后把checksum值作为一个隐藏的文件存储在HDFS namespace中。当Client从每个Datanode接收到文件内容时,它将使用相应的checksum文件中的校验和值来校验。如果失败,Client将会尝试从其他Datanode上重新获取block replica(并会向Namenode报告block损坏)。

 

十八、Metadata磁盘故障

    Fsimage和Editlog是HDFS的核心数据结构。这些文件的损坏将导致HDFS视力无法工作。因此,Namenode可以配置以支持维护多个fsimage和Editlog的备份。Fsimage或者Editlog的更新都会在各个备份间同步。这种同步更新可能降低namespace每秒事务量。不过,这个问题是可以接收的,毕竟HDFS是文件数据密集型,而不是metadata密集型。当Namenode启动时,它将使用最新的fsiamge和editlog恢复集群状态。

 

    HDFS集群中,namenode机器有单点故障的问题。当Namenode故障失效,需要人工干预。当前自动重启和故障转移不支持。(2.2+已经支持,请参见HDFS HA与QJM)。

 

十九、snapshots

    snapshot支持保存某一个时刻的数据备份。snapshot的一个使用场景为将一个损坏的HDFS实例回滚到上一个已知的良好的时间点上。HDFS目前对snapshot支持并不好。(尚无良好的手段基于snapshot对数据进行rollback)

 

二十、Data Blocks

    HDFS被设计成支持大文件存储,当应用程序需要处理大数据时才会使用到HDFS。这些应用将数据write-once,并此后以流式访问数据。HDFS支持在文件上write-once-read-many。通常block尺寸为64M,那么HDFS将文件分割成64M的chunks,每个chunk可能会被放置在不同的Datanode上。

 

二十一、Staging(此段落内容可能与相应版本不符)

    Client创建文件的请求不是立即到达Namenode。事实上,起初HDFS Client会将文件数缓存在本地的临时文件中,应用的写入操作透明地重定向到这个临时文件,当本地临时文件积累的数据达到了一个HDFS Block尺寸时,Client与Namenode交互。Namenode将文件名称写入到文件系统然后为它分配block(创建block标识),Namenode将Datanode的标识响应给Client,此后Client将本地临时文件传输给Datanode即可。然后Client关闭文件时再告知Namenode。此时,Namenode才会提交文件创建操作并持久保存,如果在文件closed之前Namenode失效,那么此文件将丢失。

 

    经过认真考虑HDFS的目标应用后,采用了上述方式。这些应用需要流式写入文件。如果Client直接写入remote文件而不使用Client缓存的话,网络速度和阻塞将会很大程度上影响吞吐能力。这种方式并不是没有先例,早起的分布式文件系统,例如AFS也使用Client端缓存来提升性能。放宽了POSIX要求以达到较高的性能。

 

二十二、Replication Pipelining

    当Client向HDFS文件写入数据时,数据首先写入本地文件,就像上述描述的那样。假如HDFS文件的relipcation factor为3,;当本地文件积累的数据达到一个block 尺寸时,Client将会从Namenode上获取一个Datanodes列表,这些Datanodes将会负责保存这个block replicas。Client此后将block刷新到第一个Datanode,此Datanode开始以小portion(4KB块,client分割)为单位接收数据,将每个portion写入本地库,然后将portion传输给Datanodes列表中的第二个Datanode,第二个Datanode也类似,将portion写入本地库,然后传输给第三个Datanode。最终,第三个Datanode也做同样的事情。就这样,一个Datanode能够从pipeline中的前一个Datanode接收数据,同时将数据局转发给pipeline中的下一个Datanode;Data最终以piplelined方式在Datanode间传递。

 

二十三、Accessibility

    应用程序可以使用多种方式访问HDFS。HDFS本身为应用提供了FileSystem Java API使用。C语言也封装了相应的API。此外也支持HTTP方式,浏览器也可以访问HDFS系统。

 

二十四、FS Shell

    HDFS提供了一些shell指令用于和系统交互,包括HDFS文件管理和系统管理(DFSAdmin)。请参见[hdfs常用指令]。

 

二十五、Space Reclamation(空间回收)

    当一个文件被应用程序删除,它不会立即从HDFS中移除。而是,HDFS首先把它重命名(改变路径)到/trash目录(垃圾箱)。只要文件还在trash中,它都可以被迅速恢复。不过文件只会在trash中保留一定的时间(通过fs.trash.interval开启trash功能,并设定保留时长,默认此特性关闭),当过期后,HDFS才会真正删除文件(namespace中移除)。删除操作会导致相应的blocks所占空间被释放。不过,用户删除文件之后,可能需要一定的延迟后,HDFS才会释放磁盘空间。

 

    当trash功能开启时,通过“hdfs dfs -rm”删除文件时,文件将会移动到trash目录(/user/root/.Trash/Current)。通过客户端API删除时也一样。我们也可以手动使用Trash类将文件移动到垃圾箱中。

 

    只要文件存在trash目录中,用户即可撤销删除。/trash目录和普通的HDFS目录没有区别,如果想撤销删除,用户可以到此目录下,移动文件到其他目录即可。目前默认的策略是trash目录下文件被保存6个小时,此后将会被永久删除。

 

 

    当一个文件的Replication factor降低,Namenode将会删除那些多余的replicas。此后将会通过心跳将操作信息反馈给Datanode,那么Datanode即可删除相应的block,并且释放存储空间。和上述一样,setReplication() API调用与实际的空间时间可能会有些延迟。

  • 大小: 30.3 KB
  • 大小: 39.3 KB
官方翻译最完整HDFS架构详解 自己根据官网翻译而来,加上个人的整理的思维导图,非常值得一看 立即下载

相关推荐

手把手教你用LDR9201芯片DIY高性能Type-C耳机转接头(附电路图)

本文详细介绍了基于LDR9201芯片DIY高性能Type-C耳机转接头的完整实战教程。从芯片选型、电路设计、元器件采购到焊接调试,手把手指导如何打造一个免驱兼容、支持高解析度音频且可通过EEPROM深度定制功能的专属转接头。重点解析了LDR9201作为高度集成的USB音频控制器SoC的优势,并提供了核心电路图与配置指南,适合电子爱好者和硬件开发者实践。

jump7的博客 355

HDFS如何检测并删除多余副本块

前言 在HDFS中,每时每刻都在进行着大量block块的创建和删除操作,这些庞大的block块构建起了这套复杂的分布式系统.普通block的读写删除操作一般人都或多或少了解过一些,但是过量的副本清理机制是否有人知道呢,就是overReplicatedBlock的处理,针对过量的副本块,HDFS怎么处理,何时处理,处理的策略机制如何,本文就给大家分享HDFS在这方面的知识. 过量副本块以

走在前往架构师的路上 1万+

基于稀疏表示字典学习的图像超分辨率-杨建超论文解析

文章:《Image Super-Resolution via Sparse Representation》 作者:杨建超 信号稀疏的定义: 令字典D的原子个数M,信号维度为N,则有以下三种关系: M = N时,D为完备的; M > N时,D为冗余的; M>>N时, D为过完备的。 图解如下: 借鉴了压缩感知的思想,通过对大量低分辨率图像和高分辨...

ycc18829026593的博客 7637

HDFS常用操作命令

HDFS中的一些常用指令,主要包括上传、下载和对文件系统的操作

qq_36139822的博客 1682

CUDA 12.1环境下的动态库链接修复:从libcusparse.so.12的undefined symbol错误到libnvJitLink.so.12的正确加载

本文详细解析了在CUDA 12.1环境下,PyTorch因libcusparse.so.12找不到libnvJitLink.so.12中的__nvJitLinkAddData_12_1符号而报错的根本原因。通过诊断动态链接过程,提供了创建符号链接、修改环境变量等三种解决方案,并深入探讨了nvJitLink组件的作用及环境配置的最佳实践,帮助开发者彻底解决此类动态库链接问题。

c8d9e0f1的博客 206

PCL 循环体素滤波

本文提出了一种自动循环体素滤波算法,用于解决点云配准中分辨率差异大、参数设置复杂的问题。算法通过计算点云分辨率(公式1),采用迭代方式调整体素尺寸(公式2),逐步逼近目标分辨率。该方法在保留几何特征的同时有效精简数据量,实现了均匀分辨率的自动调整。实验通过PCL库实现,展示了原始点云与滤波结果的对比效果,验证了算法在减少数据规模方面的有效性。该方法为点云配准提供了预处理解决方案,相关成果已发表于SCI期刊。

点云侠的博客 282

HDFS架构指南(官网)

简介 Hadoop分布式文件系统(HDFS)是一个设计用来运行在商业机器上的分布式文件系统。它和已存在的分布式文件系统有很多相似之处。当然,和其他分布式文件系统的区别也是非常明显的。HDFS是高容错的,它设计用来部署在低成本的机器上。HDFS提供高吞吐量访问应用数据,对于拥有大数据集的应用非常适合。HDFS最开始是作为ApacheNutch web搜索引擎工程的基本部件开发的。现在,HDFS是A

但行好事,莫问前程 2107

《拉依达的嵌入式\驱动面试宝典》—Linux篇(八)_Linux驱动编程

《拉依达的嵌入式\驱动面试宝典》 整合了所有我认为可能遇到的技术面试问题。所有问题及其答案均是我个人学习后查阅资料总结,每个回答都做了仔细的分析,在嵌入式及其驱动面试相关问题解析做到全网独一无二。学习或者转行到嵌入式、驱动开发领域学习的不二之选

拉依达不拉跨的博客 319

官网HDFS的中文简介--Hadoop分布式文件系统:架构和设计

引言 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的。HDFS在最开始是作为Apache Nutch搜索引擎项目的基础架构而开发的。HDFS是Apach

qq_45453185的博客 1539

Buck电源设计常见的一些问题(四)MOS管振荡抑制方法(二)

另一方面,开关振铃为远超开关频率的高频振铃,并伴随很高的 dV/dt,会带来传导和辐射的 EMI 问题,可能会使得终端产品不能通过 EMI 标准测试,更严重时甚至会干扰开关电源自身的信号电路或临近的其他功能电路的正常工作。选用二极管反向特性好的器件;该电路可等效成图 3 中 LC 谐振电路,新的 LR和 CR为 Lp1、Lp5,Lp3, Lp4, CD等所有参与振铃的寄生感容的复合值。通常 Snubber 的 Csnub取值在数 nF 以上,在振铃频率 fR(加了 snubber 后)下的阻抗很小。

小幽余生不加糖 2892

Agent应用实践之三十六 - AgentScope高阶用法:AG-UI

AI 大模型飞速进化,不懂 AI、不会用 Agent 的程序员,正在慢慢被行业淘汰。现在 AI 新技术迭代快到离谱:RAG 还没学明白,MCP 接踵而来;工具刚上手,Skills、各类新 Agent 概念又轮番刷屏;Manus还没看懂,就出来OpenClaw,OpenClaw热度还没退,又出来Hermes。越追越乱、越学越焦虑,永远在被动跟风,陷入学不完、跟不上、用不上的内耗。其实焦虑的根本原因,不是新技术太多,而是不懂大模型 Agent 应用底层原理,只会零散跟风,没有通用方法论。为此我专门推出Agent

代码让AI扣 139

HDFS HA与QJM(Quorum Journal Manager)介绍及官网内容整理

问题导读 1.HDFS HA与QJM解决了什么问题? 2.HDFS HA与QJM区别是什么? 3.在HA(两个namenode)架构下,如何访问hdfs文件? 【使用QJM构建HDFS HA架构(2.2+)】     本文主要介绍HDFS HA特性,以及如何使用QJM(Quorum Journal Manager)特性实现HDFS HA。 一、背景

stark_summer的专栏 2万+

手把手教你ensp仿真搭建校园网(含防火墙及无线网络)系列(二)校园网接入层交换机配置

本系列博客将带你从零开始,使用 华为 eNSP(Enterprise Network Simulation Platform) 仿真搭建一个完整的校园网络,涵盖 核心层、汇聚层、接入层、防火墙安全策略、无线AC+AP组网 等实战场景。无论你是网络初学者还是希望深化实战经验的工程师,都能通过本教程掌握企业级网络的规划、配置与排错技巧。

echo的博客 1219

HDFS HA与QJM[官网整理]

【使用QJM构建HDFS HA架构(2.2+)】 本文主要介绍HDFS HA特性,以及如何使用QJM(Quorum Journal Manager)特性实现HDFS HA。 一、背景 HDFS集群中只有一个Namenode,这就会引入单点问题;即如果Namenode故障,那么这个集群将不可用,直到Namenode重启或者其他Namenode接入。 有两种方式会影响集群的整体可用性: 1、

lhui798的专栏 551

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

HDFS Federation[官网整理]

【HDFS Federation(2.2+)】   一、Background     HDFS数据存储主要有两层:     1、 Namespace,包含“目录”、“文件”、“blocks”信息,支持所有的与namepace相关的文件系统的操作,例如目创建、删除、修改,以及对目录文件的列表操作。     2、Block存储服务:         A) Block管理:Namenode...

深入一点 232

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Hadoop HDFS和Yarn架构设计

HDFS 和 yarn都是主从架构 master==>slave 1.DN NM一般部署在同一个机器上 原因是数据本地化 2.大数据生态圈大部分组件都是主从架构,例如hdfs yarn 有些是集群架构 例如 zookeeper kafka hbase也是主从架构,master regionserver ,但是hbase比较特殊,这个要注意。 HDFS HA架构 官网架构图...

把伤痕当酒窝 642

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

HDFS架构设计

此图中可以看到有以下组件构成(这个图是Apache官网的图片): Namenode:是一个中心服务器,负责管理文件系统的名字空间(namespace)以及客户端对文件的访问。 Datanode:集群中的Datanode一般是一个节点一个,负责管理它所在节点上的存储。 Block:是文件系统中的文件块,默认是128M,可以配置 Rack:机架 HDFS采用master/slave架构。一个HDFS集...

qq_43578218的博客 220

HDFS(数据存储)

NameNode启动后将元信息加载到内存,磁盘文件名为fsimage,快的位置信息不会保存到fsimage,而由DataNode启动时主动上报给NameNode,edit记录操作日志 一个集群中有且只有一台NameNode处于active状态 3.SecondNameNode SecondNameNode是NameNode的备份,但主要任务是合并NameNode的fsimage和edit logs,减少NameNode启动时间 SNN的合并时机可以通过配置文件设置的时间间隔(fs.checkpoint.

weixin_51699336的博客 1万+

Hadoop一 HDFS分布式文件系统

Hadoop与HDFS的关系 HDFS客户端 - Jetbrians产品插件的使用 HDFS文件系统常用命令 配置HDFS集群 IDEA配置hadoop客户端 hdfs的fsck命令详解 HDFS存储原理 HDFS修改block块大小 HDFS修改副本数量

东风麦芽糖 1427

虚拟机部署HDFS集群

HDFS组件:分布式存储组件,可以构建分布式文件系统用于数据存储。基础架构主角色:NameNode(独立进程,负责管理HDFS整个文件系统,负责管理DataNode)从角色:DataNode (独立进程,负责存储和取出数据)主角色辅助角色:SecondaryNameNode (NameNode的辅助,独立进程,主要帮助 NameNode 完成元数据整理工作)准备工作:虚拟机中服务器创建三台服务器,修改名称为node1(8G),node2(4G),node3(4G)

世界万般阻碍,我们见字如面! 719
上一篇: HDFS Snapshot[官网整理]
下一篇: HDFS Quotas[官网整理]
shift_alt_ctrl
博客等级 码龄10年 0粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值