主页 > 新闻资讯 > Spark开发语言:Scala与Python相比如何?

Spark开发语言:Scala与Python相比如何?

作者:张老师 浏览次数: 2020-02-20 16:18
对于Spark框架,很多同学都知道的是,Spark在编程上支持多种开发语言,包括Scala、Java、Python等多门主流编程语言,而这些不同的编程语言,在实际的Spark来发当中,选择哪一种更好呢?今天我们来对Spark开发语言Scala和Python做一个简单的对比。

首先对于Scala语言,这是Spark框架自身的编程语言,其重要性可想而知,在学习Spark框架的时候,为了研读源码,也是需要掌握Scala语言的。

Spark开发语言

这里顺便也说一下Java,Spark框架也支持Java,但是相对Java,Scala语言的简洁性得到了广泛的认可,且支持类型推断,可大大提升开发者的开发效率。并且,因为Java不支持REPL(Read-Evaluate-Print-Loop交互式编程环境),在实际编程当中,很多时候都没有Scala来得方便。

而Python语言,也是一向以简洁易上手出门,可读性很高,并且拥有交互式编程环境,,在Spark开发语言当中又有竞争优势吗?

Python作为一门解释型语言,性能可以说是被诟病最多的一环。

Scala基于Java Virtual Machine,在数据分析处理过程中比Python快上近10倍,另外Scala可以无缝调用Java API,所以它同Hadoop框架(由Java开发)的交互、兼容非常好;

Python在这方面就相形见绌了,在Spark环境下想实现同HDFS的交互,开发人员甚至需要使用第三方插件,如hadopy。同时,用Python代码去调Spark库性能平庸,且在多进程并行之下比等效的Scala代码慢许多。

总的来说,Spark框架的原生语言是Scala,当企业级应用需实现某些特定功能,要修改底层源码时,或功能呈现不及预期,需要排查原因时,使用Scala会更加得心应手;在执行调优、优化时,Scala也会更加方便。而Python语言,被看作人工智能领域的首选语言,Python更加面向分析,在数据科学家们当中广受欢迎。

关于Spark开发语言,Scala和Python之间,其实总体来说还是Scala更加适用,但是对于已有Python编程基础的人员来说,能够通过Python来实现Spark编程,尤其是数据分析方面的需求,也是可以的。成都加米谷大数据,大数据开发培训2020春季班正在招生中,详情可联系客服了解!
热点排行
推荐文章
立即申请>>