hadoop - 部署 Spark 的最佳方式?

标签 hadoop amazon-ec2 apache-spark hadoop-yarn amazon-emr

在 YARN 或 EMR 而非 EC2 上部署 Spark 是否有实质性优势?这将主要用于研究和原型(prototype)设计,并且可能使用 Scala。我们不愿意不使用 EC2 主要是因为其他选项涉及额外的基础设施和复杂性,但也许它们也提供了实质性的好处?

我们主要是从 S3 读取数据/向 S3 写入数据。

最佳答案

让我们区分不同的层: 有基础设施层,即 spark 作业应该在哪些(虚拟)机器上运行。潜在的选择包括本地机器集群或从 EC2 租用的虚拟机集群。 尤其是当从 S3 写入大量数据或向 S3 写入大量数据时,EC2 可能是一个不错的选择,因为这两种服务都很好地集成并且通常在相同的数据中心运行(为您提供更好的网络性能)。

第二层是最上面的软件/调度,即连接所有这些机器以调度和运行您的 Spark 作业的软件。 这里的选项包括 Yarn (作为 Hadoop 项目的调度程序), Mesos (通用调度程序也能够处理非 hadoop 工作负载)和 Myriad (本质上是 Mesos 上的 Yarn)。

可以找到 Yarn 和 Mesos 之间很好的比较 here .

EMR 为您提供了轻松启动 Hadoop/YARN 集群的选项。甚至存在引导操作让你 install spark在这样的集群上。

希望这有助于回答您的问题!

关于hadoop - 部署 Spark 的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30112253/

相关文章:

json - 是否可以为一组 map 创建 Avro 模式?

linux - 自动化 bash 脚本

java - 在集群模式下将 Spark 从 eclipse 部署到 YARN 时出错

amazon-web-services - AWS Glue ETL 作业失败,出现 AnalysisException : u'Unable to infer schema for Parquet. 必须手动指定。;'

amazon-ec2 - EC2 上 Hadoop 集群中的按需从属生成

hadoop - 无法在Hortonworks Sandbox 2.0中通过JDBC访问Hive表

hadoop - yarn - spark 并行作业

amazon-web-services - Amazon ELB - 粘性 session 丢失 cookie

amazon-web-services - 如何使用 CloudFormation 将卷附加和装载到 EC2 实例

python - PySpark - 比较数据帧