spark三代API比较

    xiaoxiao2021-12-14  31

    spark 第一代API----RDD:

    DataFrame核心特征:

    A list of partitionsA function for computing each splitA list of dependencies on other RDDsOptionally,a Partitioner for key-value RDDs(e.g. to say the RDD is  hash-partitioned)Optionally,a list of preferred locations to compute each splits on(e.g. block locations for an HDFS file)

    spark 第二代API----DataFrame:

    DataFrame核心特征:

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

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

    spark 第三代API----DataSet:

    DataSet核心价值和好处是:Encoder

    编译时的类型安全检查,不需要再执行事情才发现类型不匹配;性能的极大提升;内存使用极大降低、减少GC......极大地减少网络数据的传输......极大地减少了采用Scala和Java编程的代码的差异性,DataSet还不支持Python 、R 补充: dataSet会同时可以兼顾Functional和Relational Programming;dataSet可以统一流计算、SQ、ML等的API编程dataSet最重要的是效率;底层的Tungsten的优化、Encoder、数据在内存和磁盘的存储等等
    转载请注明原文地址: https://ju.6miu.com/read-970191.html

    最新回复(0)