【问题标题】:Storing HDFS data only on specific nodes in a Hadoop Cluster仅在 Hadoop 集群中的特定节点上存储 HDFS 数据
【发布时间】:2019-12-23 05:29:40
【问题描述】:

我们有一个 30 个节点的生产集群。我们想要添加 5 个数据节点以用于额外存储,以处理临时数据峰值(大约 2 TB)。这些数据将被临时存储,我们希望在 15 天后将其删除。

是否可以确保传入的临时数据(2 TB)仅存储在新添加的数据节点上?

我正在寻找类似于 YARN 节点标签的东西。

提前谢谢你。

【问题讨论】:

  • 你的 HDP / Hadoop 版本是多少?
  • @mazaneicha:它的 HDP 2.6.5。

标签: hadoop hdfs hortonworks-data-platform data-storage


【解决方案1】:

不幸的是,我不知道在同一个 HDFS 集群中实现此目的的简单方法。 但我认为您可以通过实施自定义“块放置策略”来实现此行为。 但是,执行此任务可能有些冒险和复杂。

这是定义/添加此功能的 HDFS jira 票证,允许您自定义此策略 (JIRA TICKET)。

如果您想自定义它,您可以在此处阅读选择数据节点的当前行为以更好地了解您: link 1

您还可以在此处找到包含多个参考资料的帖子,这些参考资料对如何实施自定义政策及其风险很有用: post

如果您想采用这种方式,我推荐的其他阅读材料:

link 2

post 2

这是一篇关于使用自定义块放置策略将副本放置在 SSD 或 HDD(混合集群)中的实验的好论文: paper

我认为如果可能的话,使用第二个集群会更简单。例如。您可以评估使用命名空间来引用每个集群的 ViewFS:

viewFs reference

link 3

问候,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多