RDD创建方式 1)从Hadoop文件系统(如HDFS、Hive、HBase)输入创建。 2)从父RDD转换得到新RDD。 3)通过parallelize或makeRDD将单机数据创建为分布式RDD。 4)基于DB(Mysql)、NoSQL(HBase)、S3(SC3)、数据流创建。
ML的API是面向Dataset的(Dataframe是Dataset的子集,也就是Dataset[Row]), mllib是面对RDD的。Dataset和RDD有啥不一样呢?Dataset的底端是RDD。Dataset对RDD进行了更深一层的优化,比如说有sql语言类似的黑魔法,Dataset支持静态类型分析所以在compile time就能报错,各种combinators(map,foreach等)性能会更好
Spark创建DataFrame的三种方法 跟关系数据库的表(Table)一样,DataFrame是Spark中对带模式(schema)行列数据的抽象。DateFrame广泛应用于使用SQL处理大数据的各种场景。