Spark 基础(一)

最近一直在学习Spark,Spark 是hadoop 的改进加强版,相比于hadoop,对迭代运算支持更好,加上内存运算,某些方面速度更快。

在Spark中,将RDD作为其中的基本运算单元,也就是以rdd为基本数据结构,程序开发人员的操作都是在rdd上进行操作,rdd对于开发人员,逻辑上可以认为就是一个分布式存储的大数组,没个rdd下包含若干分区,这些不同的分区可以存储在同一台机器,也可以存储在不同的机器上。对于rdd,提供了多种算子,就是相当于将对于数据的常用操作,具体抽象为不同的函数,利用这些官方提供的接口,去对rdd中的数据进行操作。在sql中,group by,where  这些就类似于算子,利用这些算子的组合,加上udf,可以实现对数据的复杂操作,spark也是如此,利用提供的rdd的操作函数,加上你自己定义的函数,可以实现丰富的操作。

Spark是用scala语言写的,Scala 是一种多范式编程语言,非常灵活,其重要的是结合了函数式编程的优点,将函数看成一种对象,与变量一样进行传递,函数就是一种运算规则,在大数据处理框架中,运算单元之间由于io的限制,尽量减少数据传递,尽量多传递运算。这一点跟scala中,将函数跟对象,变量看成平等的,可以传递的特性是一致的。 对于spark应用开发而言,java,scala都可以,两者都是运行在jvm上,都是面向对象语言。有了c++/java的基础,学习面向对象语言都是一件较为轻松的事情。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值