spark优势在于基于内存计算,速度很快,计算的中间结果也缓存在内存,同时spark也支持streaming流运算和sql运算

Mesos是资源管理框架,作为资源管理和任务调度,类似Hadoop中的Yran

Tachyon是分布式内存文件系统

Spark是核心计算引擎,能够将数据并行大规模计算

Spark Streaming是流式计算引擎,将每个数据切分成小块采用spark运算范式进行运算

Spark SQL是Spark的SQL ON Hadoop,能够用sql来对数据进行查询等功能

GraphX是图计算引擎

MLlib是机器学习库,提供聚类,分类以及推荐等基本的机器学习算法,并且社区中不断开发新的算法

Spark解决了哪些之前专有系统的局限性

重复开发,可能用使用storm来进行流式计算,有用别的框架进行机器学习

系统组合,不同系统之间数据需要约定格式

专有系统适用范围局限,storm适用于流计算,graphX适用于图计算

资源分配与管理,每个系统都有各自的资源管理,不方便协调

弹性分布式数据集RDD:分布式数组,将整个数据切分成不同的块,然后存到不同的节点通过一个统一的元数据RDD进行管理

partition,存储所有数据块的列表

compute函数,支持不同的RDD完成不同的运算(在不同节点上对这些数据块进行不同的运算)

dependencies维持每次RDD的顺序,比如一部分数据首先要进行去重,然后排序,分组,每次一运算数据都要用到上一次RDD的结果,这就需要dependencies来进行管理

partitioner,重新分区,

preferredLocations,优先读取本地数据

transformations,转换数据

编写程序实例:

进入spark官网,下载并解压spark程序包,此处用最新的:

解压之后在IDE中新建Scala项目,此处使用IntelliJ作为IDE:

new一个project并选择Scala,然后选择object:

讲Spark中jar文件下的jar包全部导入project:

编写如上代码运行,先建立连接spark实例,然后命名,之后选择地址,目前用本地环境

之后编写数据,用parallelize将数据写入RDD,然后可以开始统计count,或者take数据等操作

还可以在服务器上用spark-shell执行代码,还是先解压下载好的scala包,然后进入bin目录,执行./spark-shell,由于是内环境操作,不需要实例化链接,然后与上述操作一样:

二十三、Hadoop学记笔记————Spark简介与计算模型的更多相关文章

  1. 二十四、Hadoop学记笔记————Spark的架构

    master为主节点 一个集群中可能运行多个application,因此也可能会有多个driver DAG Scheduler就是讲RDD Graph拆分成一个个stage 一个Task对应一个Spa ...

  2. 二十二、Hadoop学记笔记————Kafka 基础实战 :消费者和生产者实例

    kafka的客户端也支持其他语言,这里主要介绍python和java的实现,这两门语言比较主流和热门 图中有四个分区,每个图形对应一个consumer,任意一对一即可 获取topic的分区数,每个分区 ...

  3. 二十一、Hadoop学记笔记————kafka的初识

    这些场景的共同点就是数据由上层框架产生,需要由下层框架计算,其中间层就需要有一个消息队列传输系统 Apache flume系统,用于日志收集 Apache storm系统,用于实时数据处理 Spark ...

  4. 二十、Hadoop学记笔记————Hive On Hbase

    Hive架构图: 一般用户接口采用命令行操作, hive与hbase整合之后架构图: 使用场景 场景一:通过insert语句,将文件或者table中的内容加入到hive中,由于hive和hbase已经 ...

  5. 二十五、Hadoop学记笔记————Hive复习与深入

    Hive主要为了简化MapReduce流程,使非编程人员也能进行数据的梳理,即直接使用sql语句代替MapReduce程序 Hive建表的时候元数据(表明,字段信息等)存于关系型数据库中,数据存于HD ...

  6. 十九、Hadoop学记笔记————Hbase和MapReduce

    概要: hadoop和hbase导入环境变量: 要运行Hbase中自带的MapReduce程序,需要运行如下指令,可在官网中找到: 如果遇到如下问题,则说明Hadoop的MapReduce没有权限访问 ...

  7. 十七、Hadoop学记笔记————Hbase入门

    简而言之,Hbase就是一个建立在Hdfs文件系统上的数据库(mysql,orecle等),不同的是Hbase是针对列的数据库 Hbase和普通的关系型数据库区别如下: Hbase有一些基本的术语,主 ...

  8. 十八、Hadoop学记笔记————Hbase架构

    Hbase结构图: Client,Zookeeper,Hmaster和HRegionServer相互交互协调,各个组件作用如下: 这几个组件在实际使用过程中操作如下所示: Region定位,先读取zo ...

  9. 笔记:Spark简介

    Spark简介 [TOC] Spark是什么 Spark是基于内存计算的大数据并行计算框架 Spark是MapReduce的替代方案 Spark与Hadoop Spark是一个计算框架,而Hadoop ...

随机推荐

  1. 轻量级网络库libevent初探

    本文是关于libevent库第一篇博文,主要由例子来说明如何利用该库.后续博文再深入研究该库原理. libevent库简介 就如libevent官网上所写的“libevent - an event n ...

  2. Linux常用命令(第二版) --Shell应用技巧

    Shell应用技巧 小技巧: 1.命令补全功能: <Tab>键 2.清屏: Ctrl+l 3.删除光标前所有内容: Ctrl+u 4.命令历史记录: history 这时:  !histo ...

  3. 系统性能监测(使用nmon、nmonanalyser)

    系统性能监测使用工具: l系统性能监测使用的主要监测工具是:nmon(AIX6.1及以上版本系统自带). l系统性能监测使用的主要分析工具是:nmonanalyser. NMON工具简介: NMON工 ...

  4. C++开发基础

    硬件配置: 586以上PC兼容机或品牌机,配有彩色显示器.鼠标.键盘,内存不小于20MB,硬 盘自由空间不少于60MB.推荐配置为内存32MB或64MB(或以上),硬盘自由空间500MB 以上. 软件 ...

  5. linux内核原子变量与原子位操作API

    原子变量: arch/arm/include/asm/atomic.h 定义并初始化 atomic_t v = ATOMIC_INIT(0); 写 void atomic_set(atomic_t * ...

  6. LeetCode(61)-Valid Palindrome

    题目: Given a string, determine if it is a palindrome, considering only alphanumeric characters and ig ...

  7. 飞鱼相册笔记(1)----外置SD卡文件夹名称不区分大小写

    飞鱼相册笔记(1)----外置SD卡文件夹名称不区分大小写 在飞鱼相册发布的第一个测试版中,很多用户表示无法查看外置SD卡中的照片.乍一听觉得加个外置SD卡的根目录,然后在扫描所有图片的时候把这个根目 ...

  8. 关于MySQL 5.6.24 解压缩版重启电脑后,无法启动的问题

    最近的项目需要用到mysql,想起以前安装过,就得应该没啥问题.也不知道是软件更新换代的问题,还是版权问题,网上找的msi版本的mysql都很难安装,一开始要安装.NET,我忍了,然后又要安装Visu ...

  9. 《MySQL必知必会》读书笔记_2

    通配符:(尾空格可能会干扰通配符匹配) % 匹配任意字符 _ 匹配任意单个字符 正则表达式:REGEXP 用法就是替换掉LIKE的位置,后面配合正则表达式. 默认不区分大小写,如果区分的话添加关键字B ...

  10. PLSQL学习教程(全)

    基于ORACLE9i+PL/SQLDeveloper7.1.4) 课程 一 PL/SQL 基本查询与排序 本课重点: 1.写SELECT语句进行数据库查询 2.进行数学运算 3.处理空值 4.使用别名 ...