Cloudera hadoop数据存储到特定节点
Cloudera hadoop data storage into specific node
我有 10 个 amazon ec2 节点集群用于每天的数据处理,我想将所有 10 个节点用于每天的批处理(仅 2 小时处理),一旦生成报告数据点,我就想关闭 5 个节点并仅使 5 个节点在当天剩余时间处于活动状态以优化成本。
我的复制因子是 3。
在某些情况下,所有 3 个数据块(实际和复制块)都存储在我正在关闭的那 5 个节点中。因此我无法正确读取数据。
我可以在 cloudera 管理器中进行一些设置以将特定数据库或特定表保存到给定节点中,这样我在只有 5 个活动节点时读取数据时不会有任何问题。
或任何其他建议,我们将不胜感激。
您可以使用机架感知(虚拟地)将您的集群分成 2 个 "racks",并将您定期关闭的 5 个节点放在一个单独的 "rack" 上。复制策略将要求 NN 将副本放置在单独的机架上(如果已配置)。同样,我在这里指的是虚拟意义上的机架。那应该可以满足您的需求。
我有 10 个 amazon ec2 节点集群用于每天的数据处理,我想将所有 10 个节点用于每天的批处理(仅 2 小时处理),一旦生成报告数据点,我就想关闭 5 个节点并仅使 5 个节点在当天剩余时间处于活动状态以优化成本。
我的复制因子是 3。
在某些情况下,所有 3 个数据块(实际和复制块)都存储在我正在关闭的那 5 个节点中。因此我无法正确读取数据。
我可以在 cloudera 管理器中进行一些设置以将特定数据库或特定表保存到给定节点中,这样我在只有 5 个活动节点时读取数据时不会有任何问题。
或任何其他建议,我们将不胜感激。
您可以使用机架感知(虚拟地)将您的集群分成 2 个 "racks",并将您定期关闭的 5 个节点放在一个单独的 "rack" 上。复制策略将要求 NN 将副本放置在单独的机架上(如果已配置)。同样,我在这里指的是虚拟意义上的机架。那应该可以满足您的需求。