主页 > 新闻资讯 > Spark是什么语言开发的?Spark编程语言基础

Spark是什么语言开发的?Spark编程语言基础

作者:张老师 浏览次数: 2020-02-12 18:53
在大数据计算框架当中,Spark作为主流的计算引擎之一,在大数据开发工作当中也是经常用到的,作为技术开发人员,掌握Spark编程是基础的要求。很多刚开始入门学习的零基础小白,经常会问Spark是什么语言开发的?Spark编程语言基础要求高吗?下面我们就来为大家详细介绍一下。

Spark的出现,本身来说就是专为大规模数据处理而设计的,其继承了早期的Hadoop的优势,并在这个基础之上,进行了优化和调整。其中非常重要的一点就是对支持的编程语言的拓展。

Spark是什么语言开发的

Spark自身是使用Scala语言编程的,但是同时也提供Java、Python、R语言等的API接口,也就是说,Spark支持多种语言编程,除了自身的Scala语言,常见的Java、Python语言也是可以的。

Spark开发目前主要使用三种语言:Scala、Python、Java。

但是根据实际的编程操作来看,Scala仍然是最优的选择,语法简洁,且支持类型推断,可大大提升开发效率。并且随着Spark的深入,掌握Scala语言对Spark框架的源码研读也是有好处的。

Python,作为一门解释型语言,在性能上远远比不上Scala。同时,用Python代码去调Spark库性能平庸,且在多进程并行之下比等效的Scala代码慢许多。

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

在并发性上,CPython解释器中,由于GIL(全局解释器锁)的存在,使用Python写Spark程序时,不管进程有多少线程,每次只有一个CPU在进程中处于活动状态。GIL虽然保证了内存管理的线程安全,但每当需要部署新的代码/程序时,就得新启动更多的进程,需要额外的内存开销。在此场景下,Scala就显得更为高效和好用了。

看完上面的介绍,相信大家对Spark是什么语言开发的也有了答案,Spark框架支持多种语言开发,但是从实际出发来看,最佳的选择仍然是Scala,所以学习Spark,建议大家还是要掌握好Scala编程基础。成都加米谷大数据,大数据技术分享,大数据培训班每月开班中,课程大纲可联系客服获取!
热点排行
推荐文章
立即申请>>