GCP - GKE与Dataproc的火花

问题描述 投票:1回答:2

我们的组织最近将其基础架构从aws迁移到了谷歌云计算,我认为数据集群是运行现有火花作业的一个很好的解决方案。但是当谈到定价时,我也意识到我可以启动一个google kubernetes引擎集群并在其中安装spark来运行spark应用程序。

现在我的问题是,如何“在gke上运行spark”并使用dataproc比较?在自动扩展,定价和基础设施方面,哪一个是最佳选择。我已经阅读了关于gke和dataproc的googles文档,但是在使用GKE或dataproc优于另一个的优点和缺点方面还不够。

任何专家意见都会非常有帮助。

提前致谢。

pyspark google-cloud-platform google-cloud-dataproc google-kubernetes-engine
2个回答
5
投票

SparkP on DataProc经过验证,并且已经在许多组织中使用,虽然它没有完全管理,但您可以通过GCP api自动化集群创建和拆除,提交作业等,但它仍然是您必须管理的另一个堆栈。

Spark上的GKE是新的东西,Spark开始添加2.4以上的功能以支持Kubernetes,甚至谷歌更新了Kubernetes几天的预览,Link

如果我必须在Prod环境中运行Jobs,我会选择DataProc,否则你可以尝试使用Docker并看看它是如何运行的,但我认为它需要更多的时间来保持稳定,从纯粹的成本角度来看它会使用Docker更便宜,因为您可以与其他服务共享资源。


2
投票

加上我的两分钱给上面的回答。

  • 我赞成DataProc,因为它管理和支持Spark开箱即用。没有谜题。更重要的是,成本优化。您可能不会一直需要群集,您可以拥有带数据流的短暂群集。
  • 使用GKE,我需要明确地丢弃集群并在必要时重新创建。需要额外的护理。
  • 我无法在数据沿袭中看到GCP提供的任何直接服务。在这种情况下,我可能会在我自己管理的Spark安装上使用Apache Atlas和Spark-Atlas-Connector。在这种情况下,使用我自己的所有控件在GKE上运行Spark将是一个令人信服的选择。
© www.soinside.com 2019 - 2024. All rights reserved.