何时使用 Apache Spark
介绍
本指南将解释应在项目或其他专业计划中使用Apache Spark 的情况。
为了知道何时使用 Spark 是合适的,您必须首先了解它是什么。查看此 Pluralsight 指南以获取有关Apache Spark 的更多信息。
Spark 的理想项目
Apache Spark 凭借其简单性和强大的处理引擎在全球迅速传播。Spark 在许多场合都大有用武之地。
云端大数据:得益于 Databricks,如果您的要求是在云端处理大数据并利用每个提供商(Azure、AWS)的技术,那么可以非常轻松地设置 Apache Spark 及其数据湖技术来分离处理和存储。
多个工作团队:当您的团队中有数据工程师、数据科学家、程序员和 BI 分析师必须一起工作时,您需要一个统一的开发平台。借助笔记本,Spark 可让您的团队一起工作。
减少学习时间:由于 Apache Spark 可以与不同的语言(Scala、Python、SQL 等)协同工作,如果您的项目必须尽快启动,那么学习曲线会较低。
批处理和流式处理任务:如果您的项目、产品或服务同时需要批处理和实时处理,那么您可以使用 Apache Spark 及其库来完成,而不是为每种类型的任务配备一个大数据工具。
建议
Apache Spark 是适用于各种大数据项目的强大工具。但是,如果您想充分利用 Spark 的最大潜力,仍应牢记以下建议:
Koalas:如果您的工程师习惯在项目中使用 Python 和 pandas 进行数据处理,那么他们可以从Koalas开始,而不必从头开始重新学习所有内容,它在 Apache Spark 上实现了 pandas API,以便以分布式方式运行相同的 pandas 方法。
Delta:Delta Lake是一种技术,它允许 Spark 上的数据湖(无论是用于批处理还是流处理)以受控的方式执行 ACID 事务,也就是说,无需过多担心文件。如果您的数据会不断更改、版本控制或插入,那么这是理想的选择。
容器(Docker/Kubernetes):如果您不打算使用 GPU,那么最好使用容器来挂载您的 Apache Spark 集群,因为这将使您能够比添加更多虚拟机更快地进行扩展。
何时不使用 Spark
尽管 Apache Spark 在许多用例中都具有潜力,但某些特殊需求可能需要另一种大数据引擎。在以下情况下,建议使用其他技术代替 Spark:
在发布-订阅模型中获取数据:在这些情况下,您有多个源和多个目标,在短时间内移动数百万个数据。对于此模型,不建议使用 Spark,最好使用 Apache Kafka(然后,您可以使用 Spark 从 Kafka 接收数据)。
计算能力低:Apache Spark 的默认处理是在集群内存中进行的。如果您的集群或虚拟机的计算能力很差,则应该选择其他替代方案,例如 Apache Hadoop。
了解更多
如果您想获得 Apache Spark 技能,Pluralsight 有一系列课程可以帮助您提升职业生涯并参与大型大数据计划:
结论
如您所见,Apache Spark 是一个统一的大数据和分析平台,适用于几乎所有类型的项目。重要的是知道如何正确使用它,您可以通过查看上面列出的课程中的内容来做到这一点。
祝愿您的大数据项目取得巨大成功!
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~