Hadoop系列之HDFS架构

Hadoop系列之HDFS架构,第1张

    本篇文章翻译了Hadoop系列下的 HDFS Architecture ,原文最初经过笔者翻译后大概有6000字,之后笔者对内容进行了精简化压缩,从而使笔者自己和其他读者们阅读本文时能够更加高效快速的完成对Hadoop的学习或复习。本文主要介绍了Hadoop的整体架构,包括但不限于节点概念、命名空间、数据容错机制、数据管理方式、简单的脚本命令和垃圾回收概念。

    PS:笔者新手一枚,如果看出哪里存在问题,欢迎下方留言!

    Hadoop Distributed File System(HDFS)是高容错、高吞吐量、用于处理海量数据的分布式文件系统。

    HDFS一般由成百上千的机器组成,每个机器存储整个数据集的一部分数据,机器故障的快速发现与恢复是HDFS的核心目标。

    HDFS对接口的核心目标是高吞吐量而非低延迟。

    HDFS支持海量数据集合,一个集群一般能够支持千万以上数量级的文件。

    HDFS应用需要对文件写一次读多次的接口模型,文件变更只支持尾部添加和截断。

    HDFS的海量数据与一致性接口特点,使得迁移计算以适应文件内容要比迁移数据从而支持计算更加高效。

    HDFS支持跨平台使用。

    HDFS使用主从架构。一个HDFS集群由一个NameNode、一个主服务器(用于管理系统命名空间和控制客户端文件接口)、大量的DataNode(一般一个节点一个,用于管理该节点数据存储)。HDFS对外暴露了文件系统命名空间并允许在文件中存储用户数据。一个文件被分成一个或多个块,这些块存储在一组DataNode中。NameNode执行文件系统命名空间的打开关闭重命名等命令并记录着块和DataNode之间的映射。DataNode用于处理客户端的读写请求和块的相关操作。NameNode和DataNode一般运行在GNU/Linux操作系统上,HDFS使用Java语言开发的,因此NameNode和DataNode可以运行在任何支持Java的机器上,再加上Java语言的高度可移植性,使得HDFS可以发布在各种各样的机器上。一个HDFS集群中运行一个NameNode,其他机器每个运行一个(也可以多个,非常少见)DataNode。NameNode简化了系统的架构,只用于存储所有HDFS元数据,用户数据不会进入该节点。下图为HDFS架构图:

    HDFS支持传统的分层文件管理,用户或者应用能够在目录下创建目录或者文件。文件系统命名空间和其他文件系统是相似的,支持创建、删除、移动和重命名文件。HDFS支持用户数量限制和访问权限控制,不支持软硬链接,用户可以自己实现软硬链接。NameNode控制该命名空间,命名空间任何变动几乎都要记录到NameNode中。应用可以在HDFS中对文件声明复制次数,这个次数叫做复制系数,会被记录到NameNode中。

    HDFS将每个文件存储为一个或多个块,并为文件设置了块的大小和复制系数从而支持文件容错。一个文件所有的块(除了最后一个块)大小相同,后来支持了可变长度的块。复制系数在创建文件时赋值,后续可以更改。文件在任何时候只能有一个writer。NameNode负责块复制,它周期性收到每个数据节点的心跳和块报告,心跳表示数据节点的正常运作,块报告包含了这个DataNode的所有块。

    副本存储方案对于HDFS的稳定性和性能至关重要。为了提升数据可靠性、灵活性和充分利用网络带宽,HDFS引入了机架感知的副本存储策略,该策略只是副本存储策略的第一步,为后续优化打下基础。大型HDFS集群一般运行于横跨许多支架的计算机集群中,一般情况下同一支架中两个节点数据传输快于不同支架。一种简单的方法是将副本存放在单独的机架上,从而防止丢失数据并提高带宽,但是增加了数据写入的负担。一般情况下,复制系数是3,HDFS存储策略是将第一份副本存储到本地机器或者同一机架下一个随机DataNode,另外两份副本存储到同一个远程机架的不同DataNode。NameNode不允许同一DataNode存储相同副本多次。在机架感知的策略基础上,后续支持了 存储类型和机架感知相结合的策略 ,简单来说就是在机架感知基础上判断DataNode是否支持该类型的文件,不支持则寻找下一个。

    HDFS读取数据使用就近原则,首先寻找相同机架上是否存在副本,其次本地数据中心,最后远程数据中心。

    启动时,NameNode进入安全模式,该模式下不会发生数据块复制,NameNode接收来自DataNode的心跳和块报告,每个块都有一个最小副本数量n,数据块在NameNode接受到该块n次后,认为这个数据块完成安全复制。当完成安全复制的数据块比例达到一个可配的百分比值并再过30s后,NameNode退出安全模式,最后判断是否仍然存在未达到最小复制次数的数据块,并对这些块进行复制操作。

    NameNode使用名为EditLog的事务日志持续记录文件系统元数据的每一次改动(如创建文件、改变复制系数),使用名为FsImage的文件存储全部的文件系统命名空间(包括块到文件的映射关系和文件系统的相关属性),EditLog和FsImage都存储在NameNode本地文件系统中。NameNode在内存中保存着元数据和块映射的快照,当NameNode启动后或者某个配置项达到阈值时,会从磁盘中读取EditLog和FsImage,通过EditLog新的记录更新内存中的FsImage,再讲新版本的FsImage刷新到磁盘中,然后截断EditLog中已经处理的记录,这个过程就是一个检查点。检查点的目的是确保文件系统通过在内存中使用元数据的快照从而持续的观察元数据的变更并将快照信息存储到磁盘FsImage中。检查点通过下面两个配置参数出发,时间周期(dfsnamenodecheckpointperiod)和文件系统事务数量(dfsnamenodecheckpointtxns),二者同时配置时,满足任意一个条件就会触发检查点。

    所有的HDFS网络协议都是基于TCP/IP的,客户端建立一个到NameNode机器的可配置的TCP端口,用于二者之间的交互。DataNode使用DataNode协议和NameNode交互,RPC包装了客户端协议和DataNode协议,通过设计,NameNode不会发起RPC,只负责响应来自客户端或者DataNode的RPC请求。

    HDFS的核心目标是即使在失败或者错误情况下依然能够保证数据可靠性,三种常见失败情况包括NameNode故障、DataNode故障和network partitions。

    网络分区可能会导致部分DataNode市区和NameNode的连接,NameNode通过心跳包判断并将失去连接的DataNode标记为挂掉状态,于是所有注册到挂掉DataNode的数据都不可用了,可能会导致部分数据块的复制数量低于了原本配置的复制系数。NameNode不断地追踪哪些需要复制的块并在必要时候进行复制,触发条件包含多种情况:DataNode不可用、复制乱码、硬件磁盘故障或者认为增大负值系数。为了避免DataNode的状态不稳定导致的复制风暴,标记DataNode挂掉的超时时间设置比较长(默认10min),用户可以设置更短的时间间隔来标记DataNode为陈旧状态从而避免在对读写性能要求高的请求上使用这些陈旧节点。

    HDFS架构兼容数据各种重新平衡方案,一种方案可以在某个DataNode的空闲空间小于某个阈值时将数据移动到另一个DataNode上;在某个特殊文件突然有高的读取需求时,一种方式是积极创建额外副本并且平衡集群中的其他数据。这些类型的平衡方案暂时还未实现(不太清楚现有方案是什么)。

    存储设备、网络或者软件的问题都可能导致从DataNode获取的数据发生乱码,HDFS客户端实现了对文件内容的校验,客户端在创建文件时,会计算文件中每个块的校验值并存储到命名空间,当客户端取回数据后会使用校验值对每个块进行校验,如果存在问题,客户端就会去另一个DataNode获取这个块的副本。

    FsImage和EditLog是HDFS的核心数据结构,他们的错误会导致整个HDFS挂掉,因此,NameNode应该支持时刻维持FsImage和EditLog的多分复制文件,它们的任何改变所有文件应该同步更新。另一个选择是使用 shared storage on NFS 或者 distributed edit log 支持多个NameNode,官方推荐 distributed edit log 。

    快照能够存储某一特殊时刻的数据副本,从而支持HDFS在发生错误时会滚到上一个稳定版本。

    HDFS的应用场景是大的数据集下,且数据只需要写一次但是要读取一到多次并且支持流速读取数据。一般情况下一个块大小为128MB,因此一个文件被切割成128MB的大块,且每个快可能分布在不同的DataNode。

    当客户端在复制系数是3的条件下写数据时,NameNode通过目标选择算法收到副本要写入的DataNode的集合,第1个DataNode开始一部分一部分的获取数据,把每个部分存储到本地并转发给第2个DataNode,第2个DataNode同样的把每个部分存储到本地并转发给第3个DataNode,第3个DataNode将数据存储到本地,这就是管道复制。

    HDFS提供了多种访问方式,比如 FileSystem Java API 、 C language wrapper for this Java API 和 REST API ,而且还支持浏览器直接浏览。通过使用 NFS gateway ,客户端可以在本地文件系统上安装HDFS。

    HDFS使用目录和文件的方式管理数据,并提供了叫做 FS shell 的命令行接口,下面有一些简单的命令:

    DFSAdmin命令集合用于管理HDFS集群,这些命令只有集群管理员可以使用,下面有一些简单的命令:

正常的HDFS安装都会配置一个web服务,通过可配的TCP端口对外暴露命名空间,从而使得用户可以通过web浏览器查看文件内容。

如果垃圾回收配置打开,通过FS shell移除的文件不会立刻删除,而是会移动到一个垃圾文件专用的目录(/user/<username>/Trash),类似回收站,只要文件还存在于那个目录下,则随时可以被回复。绝大多数最近删除的文件都被移动到了垃圾目录(/user/<username>/Trash/Current),并且HDFS每个一段时间在这个目录下创建一个检查点用于删除已经过期的旧的检查点,详情见 expunge command of FS shell 。在垃圾目录中的文件过期后,NameNode会删除这个文件,文件删除会引起这个文件的所有块的空间空闲,需要注意的是在文件被删除之后和HDFS的可用空间变多之间会有一些时间延迟(个人认为是垃圾回收机制占用的时间)。下面是一些简单的理解删除文件的例子:

    当文件复制系数减小时,NameNode会选择多余的需要删除的副本,在收到心跳包时将删除信息发送给DataNode。和上面一样,这个删除操作也是需要一些时间后,才能在集群上展现空闲空间的增加。

HDFS Architecture

自然堂冰肌水是一款非常好用的乳液,很多人都推荐过。天然堂冰肌水是给25岁以上的女性朋友用的,补水效果很好,是口碑很好的补水神器。

天然冰肌水含酒精吗?

不包括。自然堂官网畅销产品中,自然堂冰肌水备受推崇。与普通产品不同的是,它以冰川水和植物成分为原料,经过高科技融合淬火,提取出一系列对皮肤有益的产品。一些有效化妆品成分提取的必要:有些成分(大部分是植物源成分)需要用酒精从原料中提取,以达到只提取精华成分的效果。(比如酒味很重的雪肌精。)稳定成分:酒精有杀菌作用,让细菌不繁殖。使有效成分不腐败,保持成分稳定。(备注:大部分标榜不含防腐剂的护肤品都是用酒精代替防腐剂。)优化护肤品的使用感:为了让保湿成分渗透,护肤品都使用表面活性剂。但容易使产品油腻、粘稠、不可吸收。酒精加入后挥发水分,造成快速吸收的错觉,同时让护肤品有清爽的使用感。

用天然霍尔冰肌水会过敏吗?

天然冰肌水的主要成分是来自喜马拉雅5000米以上的冰川水,富含钾、钠、钙、镁等有益皮肤健康的微量矿物元素。更神奇的是冰川水的结构。冰川水由于其自然条件,作为小分子团,只有普通水团的1/2,所以活性高,渗透性强,容易渗透到皮肤底层。而且它的溶解性和扩散性都比普通水分子好。所以使用天然霍尔冰肌水,不含对皮肤有刺激性的成分,可以放心使用。一般不是特别敏感的皮肤不会过敏。

护肤品为什么要添加酒精?

1需要提取一些有效的化妆品成分:有些成分(多为植物源成分)需要用酒精从原料中提取,以达到只提取必要成分的效果。

2稳定成分:酒精有一些作用,让它不繁殖。使有效成分不腐败,保持成分稳定。

3优化护肤品的使用感:为了让保湿成分渗透,护肤品都使用表面活性剂。但容易使产品油腻、粘稠、不可吸收。酒精加入后挥发水分,造成快速吸收的错觉,同时让护肤品有清爽的使用感。

雪域纯粹滋润精华液

水、1,3丙二醇、乙醇、甘油聚醚-26、丁二醇、藻酸钠、丝氨酸、冰川水、雪莲花提取物、高山火绒草提取物、绿绒蒿提取物、白芨根提取物、苯氧乙醇、尿囊素、透明质酸钠、丙烯酸(酯)类/C10-30烷醇丙烯酸酯交联共聚物、三乙醇胺双-PEG-18甲基醚二甲基硅烷、甘草酸二钾、羟乙基纤维素、、PEG-40氢化蓖麻油、乙基己基甘油、甲基异噻唑啉酮、香精、EDTA二钠

有看瓶身、看瓶底细节、查询防伪三种方法。

1、看瓶身

在瓶身方面主要是看瓶身上的文字印刷。正品的瓶身不论是正面还是背面,上面的“自然堂”文字后面都有一个注册商标小R的标识。但是仿品虽然正面有这样的标识,但是背面却没有。另外经过对比还发现,假货文字颜色的印制相对要深一些。

2、看瓶底细节

一般仿制品在瓶底这样的细节方面,做的相对要粗糙一些,就会出现很多漏洞,所以在辨别的时候,瓶底方面是不能疏忽的。

正品的瓶底印有清晰的有效日期和产品的批号,另外细心的人可能发现了,还有一个制作精致的圆形小凸起。而有些仿品的瓶底有效日期印制的比较密集,看起来比较拥挤,而且还没有圆形的小凸起。

3、查询防伪

防伪查询如果在辨别的时候,实在分不清真假,那么还有一招就是查询防伪,这个不仅简单,而且还是最有效的方法。在包装盒上都会看见一个防伪的标签,但是记得防伪标签要完好无损的,而有的部分被刮码或者全部被刮码都是不对的哦。只要我们刮开防伪涂层,获取防伪码。

扩展资料:

自然堂的成分:

1、喜马拉雅5128米以上冰川水取自世界上海拔极高的天然冰川自涌泉,取水口位于喜马拉雅北麓5128米以上,由冰川雪水融化而成,终年不冻,至纯至净。天然小分子团结构,富含多种矿物元素,保护肌肤天然皮脂膜,优化肌肤保水力,增加肌肤营养活力,使其柔滑细腻。

2、高寒雪参珍萃,雪域高原苛刻的生长环境,赋予雪参花抗氧化能力,能够促进肌肤自我修护,减少自由基伤害,净化肌肤的同时保湿舒缓。

3、原生红石榴珍萃,产自喜马拉雅三江流域的玛瑙红石榴精华,具有美白抗氧力,净化并修护肌底内环境,改善粗糙暗沉,均匀净白提亮,均匀肤色;同时具有抗氧化功效,能够减少自由基的伤害,令肌肤皙白水润。

4、雪花莲珍萃,雪花莲精华可以帮助细胞储备能量,延长健康细胞生命周期,淡化细纹,帮助减缓肌肤老化,抗击氧化。

-自然堂

自然堂的产品,我是从16岁的时候开始使用,到现在已经27岁了。将近11年的自然堂老客户,我可以诚恳的告诉你,自然堂的没有固定适合哪个年龄使用!只能说自然堂的不同系列,或者是不同产品,适合不同的年龄。接下来给你分享一下,自然堂产品分别适合使用的年龄!

1       自然堂雪润冰肌水

这个是我很早很早就入手的一个系列了。质地很清爽适合夏天用,它的卖点有保湿补水和美白!不过美白我没怎么感受到,保湿补水倒是很不错!适合的年龄范围是16~25岁。

2       活泉保湿系列

这个系列的产品在自然堂也是很有名的了,我也是被朋友种草的。用过之后才发现这个系列的产品其实是为了25岁以上的女性准备的,因为它不仅可以补水保湿+提亮肤色,还可以为肌肤提高饱满度和增加弹力。所以对于25+以上胶原蛋白正在流失的女性来说,还是比较合适的!

3       自然堂凝视鲜艳冰肌水

我自己入手的是紫色瓶的冰肌水,给我的使用感受还是蛮良好的。因为它的主要功效是淡化细纹和紧致皮肤,所以比较适合25岁以上年龄段的人群使用!

4       水润保湿系列

在国内相对比较有口碑的水润保湿系列,比较适合秋冬干燥的季节使用,因为它主要的功效就是保湿和美白。我记得我就是秋季入手的,但具体是什么时候也记得不了!这个系列比较好的一点就是它适合任何肤质的人群使用,因为温和。年龄段的话25岁以下为最佳!

我对自然堂的产品比较有好感的,也就是上面这几个系列了。适用的年龄段我也一一列举出来了,可以做个参考!最后就是如果你想找自然堂不分年龄也不分肤质的产品,那么它家的雪润精华面膜会是个不错的选择。

答案:FLEX10K系列在结构上包括嵌入式阵列块(EAB,EmbeddedArrayBlock)、逻辑阵列块(LAB)、快速通道(FastTrack)互连和输入输出单元(IOE,In-OutElement)四部分

EAB是一种输入、输出端带有寄存器的非常灵活的RAM,既可以作为存储器使用,也可以用来实现逻辑功能EAB用来实现逻辑功能时,每个EAB相当于100~300个等效门,能方便地构成乘法器、加法器、纠错电路等模块,并由这些功能模块可以进一步构成诸如数字滤波器、微控制器等系统逻辑功能配置时,编程EAB为只读模型,生成一个大的查找表LUT来实现在这个LUT中,组合功能是通过查找表而不是通过运算来完成的,其速度比用常规逻辑运算实现时更快,且这一优势因EAB的快速访问而得到了进一步加强

自然堂的护肤品是不错的!尤其对于干皮来讲。挺适合用自然堂的!t区出油的话你可以试试一周使用一次泥类的清洁面膜使用在你的T区部分。

珀莱雅和自然堂的护肤品都在国货里属于不错的,你买回去不会后悔的产品。妹子你这个皮肤状态最好是多补水!自然堂雪域补水系列蛮好的~我用过的几款跟你讲下吧~然后你自己看看自己适合哪个~

自然堂雪域精粹爽肤水

雪域系列有清润型和凝润型两种,前者适合油皮后者适用于干皮。对我而言清爽型 就是起到普通的保湿效果。所以我选择了凝润型,因为他这款上脸不会跟油腻,属于比较干爽同时也跟滋润 。妆前使用 妆容很服帖~

自然堂雪域百合面膜

面膜纸很薄!敷上脸就一个字!爽!精华也算是比较多的哇!但是!!!敷完之后一点也不黏!而且脸上感觉水水的!炒鸡棒!!!强烈推荐!!!一定要去试试!特别是跟我一样有点干皮的小仙女们!

自然堂素颜霜

这款素颜霜中蕴含七大白花精萃,犹如将纯美花瓣轻揉于肌肤,一抹即可透亮,让肌肤告别暗哑。如奶油般的乳霜质地轻轻用指腹便能推开涂抹,没有厚重感,添加了喜马拉雅冰川水成分,具有良好水润度的同时养护肌肤,肌肤由内而外透发自然光泽。

你的肌肤状态最好是少熬夜哦~自然堂有熬夜神器,这篇里有写到过,你可以去看看~自然堂的熬夜神器

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/meirong/2445260.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-12-04
下一篇2023-12-04

随机推荐

  • 产妇可以做艾灸吗?

    艾灸可以温经通络,调补气血,驱寒祛湿,是很多养生人士非常喜欢的一种养生方式。身边也有很多人平时也在做艾灸保健,懒妈妈去年也花了好多时间去学,目前自己在家也经常做艾灸。对于产妇来说,艾灸也是同样适用的,尤其是一些有产后“月子病”的产妇,月子病

    2024-04-15
    41900
  • 美容店一个套盒的利润

    美容店一个套盒的利润大约在70%左右,这是根据相关专业人士透露得出的结论。当然,具体利润还会受到多种因素的影响,例如套盒的成本、销售价格、市场需求等等。一般来说,美容店会根据市场需求和自身定位,选择合适的套盒产品,并制定合理的销售价格。在销

    2024-04-15
    30100
  • 止汗露哪个牌子效果好

    止汗露比较好的品牌如下:1、Secret。Secret是美国品牌,属于宝洁公司旗下,它在美国市场有很高的市场占有率,也是广受消费者认可的一个品牌,Secret止汗露产品线比较丰富,各种类型的都覆盖,成分也比较温和亲肤。2、舒耐。舒耐是联合利

    2024-04-15
    34500
  • 十大平民防晒霜?

    今天我们就直奔主题说说我用过,觉得效果不错但是价格有比较平民的几款防晒霜。1、百雀羚水嫩精纯防晒百雀羚这款防晒含有多种珍贵草本精粹,它将红景天、积雪草、亚单身等融合,可以在抵御紫外线和光老化问题的同时去修复肌肤的暗沉感,让晒斑和晒伤彻底拜拜

    2024-04-15
    31800
  • 妮维雅男士蓝罐怎么区分国产和进口

    妮维雅男士蓝罐是一款非常受欢迎的护肤品,深受许多消费者的喜爱和好评。但是,对于如何区分国产和进口的妮维雅男士蓝罐,我们需要从多个角度进行考虑。我们可以通过产品包装上的标识来进行区分。通常情况下,国产产品会在包装上标注“中国制造”或者“中文标

    2024-04-15
    36800
  • 润肤水润肤乳和精华液分别怎么用

    顺序是:爽肤水-精华液-润肤乳。1、润肤水先用,这是因为润肤水具有二次清洁以及收缩毛孔的效果,而乳液具有保湿、补水、美白或者抗皱功效,只有在皮肤彻底清洁以后,才能有效使乳液进入到皮肤内。2、在使用完爽肤水后应该使用精华,因为精华的分子极细,

    2024-04-15
    33100
  • 兰蔻粉水和红水感肌水光精华露哪个先用?

    首先使用兰蔻粉水。洁面后,首先使用粉水能滋润皮肤,打开肌肤吸收的通道,然后使用水感肌水光针,修护肌肤。兰蔻粉水是一款二次清洁水,主要的功效为补水,最适合干性肌肤使用,缓解皮肤干燥的问题,水乳质地,容易吸收,令肌肤水润细腻。水感肌水光针是一款

    2024-04-15
    33500

发表评论

登录后才能评论
保存