栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Spark MLlib(1)

Spark MLlib(1)

一.概述

MapReduce每次读写,都需要序列化到磁盘。一个复杂任务,需要多次处理,几十次磁盘读写

Spark只需要一次磁盘读写,大部分处理在内存中进行

spark-shell(交互窗口模式):运行spark-shell需要指向申请资源的standalone spark集群信息,其参数为MASTER,还可以指定executor及driver的内存大小。spark-shell启动完成后,可以在交互窗口中输入scala命令,进行操作,其中spark-shell已经默认生成spark对象

Dataframe-based API is primary API

1.DataSet演进历史 Spark第一代API :RDD

优点

编译时类型安全,编译时就能检查出类型错误

面向对象的编程风格,直接通过类名点的方式来操作数据

缺点

序列化和反序列化的性能开销,无论是集群间的通信,还是IO操作都需要对对象的结构和数据进行序列化和反序列化

GC性能开销,频繁创建和销毁对象,势必会增加GC

Spark第二代API :Dataframe

Dataframe核心特征

Schema:包含了ROW为单位的每行数据的列的信息;spark通过schema就能够读懂数据,因此在通信和IO时就只需要序列化和反序列化数据,而结构的部分就可以省略了

off-heap:spark能够以二进制的形式序列化数据(不包括结构)到off-heap中,当要操作数据时,就直接操作off-heap内存

Tungsten:新的执行引擎

Catalyst:新的语法解析框架

优点

off-heap就像地盘,schema就像地图,Spark有地图又有自己地盘了,就可以自己说了算了,不再受JVM的限制,也就不再受GC的困扰了,通过schema和off-heap,Dataframe解决了RDD的缺点。对比RDD提升计算效率,较少数据读取,底层计算优化

缺点

Dataframe解决了RDD的缺点,但是却丢了RDD的优点。Dataframe不是类型安全的,API也不是面向对象风格的

Spark第三代API:DataSet

DataSet 核心:Encoder

2.Spark SQL API介绍

二.DataSet基本操作  1.DataSet的创建

2.DataSet的基础函数  

 3.DataSet的Actions操作

 4.DataSet的类型化的转化操作

 5.DataSet内置函数

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/700494.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号