【问题标题】:Is HDFS necessary for Spark workloads?Spark 工作负载是否需要 HDFS?
【发布时间】:2015-12-16 14:47:42
【问题描述】:

HDFS 不是必需的,但建议会出现在某些地方。

为了帮助评估运行 HDFS 所付出的努力:

将 HDFS 用于 Spark 工作负载有哪些好处?

【问题讨论】:

  • 那么,您需要存储任何数据吗?
  • @SeanOwen 哈哈,是的。但是 Spark 不能只写入主机的 FS 吗?说 EXT4?
  • @BAR 自动弹性、自动分发、与其他在 HDFS 上运行良好的工具集成,仅举几例?我还认为 HDFS 旨在减少磁盘访问,这可能是在非分布式文件系统中需要大数据集的应用程序的瓶颈(以防您无法在 Spark 中缓存它)。
  • 是的,您可以存储到本地存储,但是在分布式计算框架中这有什么用?
  • @kaktusito 分布和弹性是支持 HDFS 的坚实理由。

标签: hadoop apache-spark hdfs mesos mesosphere


【解决方案1】:

Spark 是分布式处理引擎,HDFS 是分布式存储系统。

如果 HDFS 不是一个选项,那么 Spark 必须使用 Apache Cassandra 或 Amazon S3 形式的其他替代方案。

看看这个comparision

S3 – 非紧急批处理作业。 S3 适用于非常具体的用例,当数据局部性不重要时。

Cassandra - 非常适合流式数据分析和批处理作业的过度杀伤力。

HDFS – 非常适合批处理作业,而不会影响数据局部性。

何时使用 HDFS 作为 Spark 分布式处理的存储引擎?

  1. 如果您已经拥有大型 Hadoop 集群,并且正在寻找数据的实时分析,Spark 可以使用现有的 Hadoop 集群。它将减少开发时间。

  2. Spark 是内存计算引擎。由于数据无法始终装入内存,因此必须将数据溢出到磁盘以进行某些操作。在这种情况下,Spark 将受益​​于 HDFS。 Spark实现的Teragen排序记录使用HDFS存储进行排序操作。

  3. HDFS 是可扩展、可靠和容错的分布式文件系统(从 Hadoop 2.x 版本开始)。利用数据局部性原则,提高了处理速度。

  4. 最适合批处理作业。

【讨论】:

    【解决方案2】:

    最短的答案是:“不,你不需要它”。即使没有 HDFS,您也可以分析数据,但当然您需要在所有节点上复制数据。

    冗长的答案非常违反直觉,我仍在尝试通过帮助 stackoverflow 社区来理解它。

    Spark local vs hdfs permormance

    【讨论】:

      【解决方案3】:

      HDFS(或任何分布式文件系统)使您的数据分发变得更加简单。使用本地文件系统,您必须手动将数据分区/复制到各个节点,并在运行作业时注意数据分布。此外,HDFS 还处理失败的节点故障。 通过 Spark 和 HDFS 之间的集成,您可以想象 spark 知道数据分布,因此它会尝试将任务调度到所需数据所在的相同节点。

      第二:你在教学中遇到了哪些问题?

      顺便说一句:如果您只是想在 AWS 上进行简单的设置,DCOS 允许您使用单个命令安装 HDFS...

      【讨论】:

        【解决方案4】:

        因此,您可以使用 Cloudera 或 Hortenworks 发行版并非常轻松地加载整个堆栈。 CDH 将与 YARN 一起使用,尽管我发现在 CDH 中配置 mesos 要困难得多。 Horten 更容易定制。

        HDFS 非常棒,因为 datanodes = 数据局部性(数据所在的进程),因为洗牌/数据传输非常昂贵。 HDFS 也会自然地阻止文件,这允许 Spark 在块上进行分区。 (128mb 块,你可以改变这个)。

        您可以使用 S3 和 Redshift。

        请看这里: https://github.com/databricks/spark-redshift

        【讨论】:

          猜你喜欢
          • 2020-11-06
          • 2014-06-03
          • 1970-01-01
          • 2019-09-25
          • 1970-01-01
          • 2012-02-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多