【问题标题】:Hadoop SAN Storage ReuseHadoop SAN 存储重用
【发布时间】:2014-08-02 08:42:24
【问题描述】:

我们有 600TB 的 EMC SAN 存储。目前,Oracle RAC 正在使用这种存储。出于可扩展性的原因,我们正在用 Hadoop 存储(Yarn、Spark - Hive、Shark)替换 Oracle RAC - 尽管我们在性能上有所妥协。

对于 Hadoop,建议使用本地存储而不是 SAN 存储。但是我们的管理层不愿意浪费 SAN 存储。他们希望保护对 SAN 存储的投资。

我们如何将 SAN 用于 Hadoop?以太网升级会有帮助吗?有哪些选项可以最大限度地利用 SAN 存储(作为 Hadoop 存储)。

【问题讨论】:

    标签: hadoop hdfs ethernet san oracle-rac


    【解决方案1】:

    假设我们使用相同的术语 - 特别是 SAN 是通过光纤通道网络访问的块设备 - 那么“本地存储”和“SAN 存储”之间没有太大区别。

    您从中获得的性能受到相同因素的限制 - 控制器数量、心轴数量、争用率等。您购买存储阵列/SAN 的原因首先是因为您可以整合您的工作负载并以相同(或更低)的平均值获得更高的突发性能。

    但是还有一个额外的因素 - SAN 通常包含一个结构,这是一个用于传输磁盘存储流量的网络。您使用的交换机通常具有高性能/低延迟 - 但它们也可能成为瓶颈和争用点。

    Hadoop... 通过使用 HDFS 有效地做同样的事情 - 使用它的多个本地磁盘来获得大的“突发”。这必然会导致您的 SAN 争用,因此您不会再获得太多整合优势 - 而且您最终可能会变得更糟,因为争用意味着瓶颈和延迟。

    如果您的存储阵列具有良好的峰值吞吐量、良好的重复数据删除机制和大型缓存,您可能会发现您的情况会更好。只要确保您有足够的端到端峰值吞吐量和 IOP 容量即可。 可能您会发现自己的情况比实际情况更糟 - 但是您是否应该以较低的成本重复使用某些东西,而不是支付额外费用来正确使用它,这更像是一种 IT 政策决定,而不是一个技术的。

    【讨论】:

      【解决方案2】:

      显然您将 SAN 用于 Hadoop,但不建议这样做。 SAN 控制器会发生争用,从而降低性能。

      将 SAN 用于 hadoop 的最佳方式是:

      1.使用 RAID-0 创建 LUN。

      2.LUN不应该共享,它只需要专用于一个DataNode服务器

      3.如果 DataNode 需要 10GB,则创建 2 个 LUN(或偶数)并在 SAN 的两个控制器之间对这些 LUN 进行负载平衡。

      显然,您可以将 SAN 用于具有适当 RAID 级别(具有冗余 - 非零)的 NameNode。

      【讨论】:

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