spark三代API比较

spark 第一代API----RDD:

DataFrame核心特征:

  1. A list of partitions
  2. A function for computing each split
  3. A list of dependencies on other RDDs
  4. Optionally,a Partitioner for key-value RDDs(e.g. to say the RDD is  hash-partitioned)
  5. Optionally,a list of preferred locations to compute each splits on(e.g. block locations for an HDFS file)


spark 第二代API----DataFrame:

DataFrame核心特征:

  1. 包含了以Row为单位的每行数据的列信息,此时DataFrame就是Table;
  2. Tungsten:新的执行引擎;
  3. Catalyst:新的语法解析框架

提升计算效率、减少数据读取、底层计算优化



spark 第三代API----DataSet:

DataSet核心价值和好处是:Encoder

  1. 编译时的类型安全检查,不需要再执行事情才发现类型不匹配;
  2. 性能的极大提升;
  3. 内存使用极大降低、减少GC......
  4. 极大地减少网络数据的传输......
  5. 极大地减少了采用Scala和Java编程的代码的差异性,DataSet还不支持Python 、R
补充:
  1. dataSet会同时可以兼顾Functional和Relational Programming;
  2. dataSet可以统一流计算、SQ、ML等的API编程
  3. dataSet最重要的是效率;底层的Tungsten的优化、Encoder、数据在内存和磁盘的存储等等
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值