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

干货:怎样将Hadoop存储容量晋升4倍?

发布时间:2018-08-16 12:08:15 所属栏目:教程 来源:赵钰莹
导读:技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合切磋小措施电商拭魅战 在Hadoop 1.0中,HDFS的单NameNode计划带来诸多题目,包罗单点妨碍、内存受限定约集群扩展性和缺乏断绝机制(差异营业行使统一个NameNode导致营业彼此影响)等。为了办理这些题目,Ha
副问题[/!--empirenews.page--] 技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合切磋小措施电商拭魅战

在Hadoop 1.0中,HDFS的单NameNode计划带来诸多题目,包罗单点妨碍、内存受限定约集群扩展性和缺乏断绝机制(差异营业行使统一个NameNode导致营业彼此影响)等。为了办理这些题目,Hadoop 2.0就引入了基于共享存储的HA办理方案和HDFS Federation,HDFS Federation是指HDFS集群可同时存在多个NameNode,这些NameNode别离打点一部门数据,且共享全部DataNode存储资源。

Apache Hadoop漫衍式文件体系(HDFS)具有高度可扩展性,可支持PB级聚集。可是,整个定名空间(文件体系元数据)存储在内存中。因此,纵然存储可以程度扩展,定名空间也只能垂直扩展,它受限于单个NameNode历程可存储的文件、块和目次的数目。

本文首要先容怎样通过Federation行使多个独立的Namenodes/Namespaces程度扩展定名空间。Namenodes互相独立,互不通讯,可以共享沟通的Datanode存储。Federation和Namespaces可觉得整个集群提供可伸缩性,Federation增进了对Namespace程度扩展的支持;添加更多的NameNode,增进集群的聚合读/写手段和吞吐量;用户和应用措施可以通过Namenodes断绝。

1、示例

Federation在可伸缩性、机能和断绝方面的上风为它建设了很多用例,本文仅罗列一些简朴示例。

1.1 HIVE ON FEDERATION

Hive将表数据组织到分区中以进步查询机能,它将分区存储在差异的位置,这为在差异定名空间中存储、打点和设置hive数据提供了机遇。行使federated集群,我们可以将差异的表存储在差异的定名空间,可能将统一个表的差异分区存储在差异的定名空间。

譬喻,我们可以将不常常会见的数据归档存储到单独的定名空间,并将当前频仍行使的数据生涯在单独的定名空间,这将进步处事于当前数据定名空间的机能服从,并镌汰负载。

假设我们一年有一个分区hive表,我们但愿将2000年往后的全部数据存储在一个定名空间中,将别的数据存储在一个定名空间中,这就可以通过federation实现。

下图表现了 NSI中Students 表year=‘2018’分区下的数据。

干货:怎样将Hadoop存储容量晋升4倍?

假如想在NS2中存储1990年的记录,我们必需改变表格以将其位置配置为NS2。

  1. hive> ALTER TABLE Students SET LOCATION ‘hdfs://ns2/user/hive/warehouse/student’; 

将表的位置变动为新定名空间NS2之后,我们可以将数据插入到所需的分区中,此刻将在NS2中建设分区。

干货:怎样将Hadoop存储容量晋升4倍?

我们可以在统一个查询中执行超过差异定名空间的多个分区操纵。譬喻,表上的“SELECT *”将从差异定名空间的分区返回记录。

干货:怎样将Hadoop存储容量晋升4倍?

下图表现了在nameservice NS1(在node-1上运行的namenode)中存储的2007和2018年的hive分区数据。

干货:怎样将Hadoop存储容量晋升4倍?

1990年的归档数据存储在NS2中(namenode在node-3上运行),如下所示:

干货:怎样将Hadoop存储容量晋升4倍?

1.2 应用措施断绝

假设我们必要运行一个较复杂的应用措施,它也许会占用Namenode上的大量资源,这很也许导致其他应用措施耽误。通过federation,我们可以将这些应用措施移动到差异的定名空间。

2. AMBARI概述

Ambari中的federated集群视图如下所示,这两个处事将各自具有响应的组件和怀抱信息。其他组件(如Datanodes和Journalnodes)将由这两个处事共享。 如下所述,启用federated所需的全部设置变动都由Ambari自动完成。

干货:怎样将Hadoop存储容量晋升4倍?

3.设置变动

要启用federated并在集群中具有多个定名空间,必要在hdfs-site.xml中举办一些设置变动。 假如行使Ambari安装federated集群,则会自动配置以下设置。可是,学会怎样通过页面设置federated是有辅佐的,以下是具有两个Nameservices集群的示例- NS1和NS2。

3.1 NAMESERVICEIDS

行使逗号脱离的NameserviceID列表将此设置添加到hdfs-site.xml。

  1. <property>  
  2. <name>dfs.nameservices</name>  
  3. <value>ns1,ns2</value>  
  4. </property> 

3.2 NAMENODEIDS

对付具有HA配置的Nameservice,我们必要为属于该Nameservice的Namenode指定NamenodeID。这是通过将NamenodeID列表添加到与名称处事ID一路行使的密钥dfs.ha.namenodessuffixed中来完成的。

  1. <property>  
  2. <name>dfs.ha.namenodes.ns1</name>  
  3. <value>nn1,nn2</value></property>
  4.  
  5. <property>  
  6. <name>dfs.ha.namenodes.ns2</name>  
  7. <value>nn3,nn4</value>  
  8. </property> 

3.3 RPC ADDRESSES

应行使设置密钥为集群中的每个Namenode设置RPC和Service-RPC地点 - dfs.namenode.rpc-address和dfs.namenode.servicerpc-address(可选)。这是通过行使NameserviceID和NamenodeID为config键添加后缀来完成的。

  1. <property>  
  2. <name>dfs.namenode.rpc-address.ns1.nn1</name>  
  3. <value>node-1.example.com:8020</value>  
  4. </property> 
  5.  
  6. <property>  
  7. <name>dfs.namenode.servicerpc-address.ns1.nn1</name>  
  8. <value>node-1.example.com:8040</value>  
  9. </property> 
  10.  
  11. <property>  
  12. <name>dfs.namenode.rpc-address.ns1.nn2</name>  
  13. <value>node-2.example.com:8020</value>  
  14. </property> 
  15.  
  16. <property>  
  17. <name>dfs.namenode.servicerpc-address.ns1.nn2</name>  
  18. <value>node-2.example.com:8040</value> 
  19.  </property> 
  20.  
  21. <property>  
  22. <name>dfs.namenode.rpc-address.ns2.nn3</name>  
  23. <value>node-3.example.com:8020</value>  
  24. </property> 
  25.  
  26. <property>  
  27. <name>dfs.namenode.servicerpc-address.ns2.nn3</name>  
  28. <value>node-3.example.com:8040</value>  
  29. </property> 
  30.  
  31. <property>  
  32. <name>dfs.namenode.rpc-address.ns2.nn4</name>  
  33. <value>node-4.example.com:8020</value>  
  34. </property> 
  35.  
  36. <property>  
  37. <name>dfs.namenode.servicerpc-address.ns2.nn4</name>  
  38. <value>node-4.example.com:8040</value>  
  39. </property> 

3.4 HTTP地点

(编辑:湖南网)

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

热点阅读