ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Spark介绍(学习笔记)

2021-11-12 11:01:14  阅读:108  来源: 互联网

标签:场景 Hadoop 笔记 学习 Streaming 集群 组件 Spark


夫君子之行,静以修身,俭以养德,非淡泊无以明志,非宁静无以致远。
夫学须静也,才须学也,非学无以广才,非志无以成学。淫慢则不能励精,险躁则不能冶性。
年与时驰,意与日去,遂成枯落,多不接世,悲守穷庐,将复何及。
——诸葛亮《诫子书》
于文章中出现的任何错误请大家批评指出,一定及时修改
有任何想要讨论和学习的问题可联系我:yangmq@aliyun.com

文章目录


Spark简介(学习笔记)


一、Spark简介

  1. Spark是什么?
    Spark是一个快速且通用的集群计算平台

  2. Spark的特点
    Spark是快速的
    Spark扩充了流行的Mapreduce计算模型
    Spark是基于内存的计算
    Spark是通用的
    Spark的设计容纳了其它分布式系统拥有的功能,批处理,迭代式计算,交互查询和流处理等
    优点:降低了维护成本
    Spark是高度开放的
    Spark提供了Python,java,Scala,Sql的APi和丰富的内置库
    Spark和其它的大数据工具整合的很好,包括hadoop,kafka等

二、Spark生态介绍

  1. Spark历史
    Spark诞生于2009年,加州大学伯克利分校RAD实验室的一个研究项目
    最初是基于hadoop mapreduce的
    发现Mapreduce在迭代式计算和交互式上低效,引入了内存存储
    2010年3月份Spark开源
    2011年AMP实验室在Spark上开发高级组件,像Spark Streaming
    2013年转移到了Apache下,不久便成为顶级项目了
  2. Spark的组件
    Spark包括多个紧密集成的组件
    在这里插入图片描述
    Spark Core:
    包含了Spark的基本功能,包含任务调度,内存管理,容错机制等
    内部定义了RDDs(弹性分布式数据集)
    提供了很多APIs来创建和操作这些RDDs
    应用场景,为其他组件提供底层的服务
    Spark SQL:
    是Spark处理结构化数据的库,就像Hive SQL,mysql一样
    应用场景,企业中用来做报表统计
    Spark Streaming:
    是实时流处理组件,类似Storm
    Spark Streaming提供了API来操作实时流数据
    应用场景,企业中用来从Kafka接收数据做实时统计
    Mlib:
    一个包含通用机器学习功能的包,Machine learning lib
    包含分类,聚类,回归等,好包括模型评估,和数据导入
    Mlib提供的上面这些方法,都支持集群上的横向扩展
    应用场景,机器学习
    Graphx:
    是处理图的库(例如,社交网络图),并进行图的并行计算
    像Spark Streaming,Spark SQL一样,他也继承了RDD API
    它提供了各种图的操作,和常用的图算法,例如PangeRank算法
    应用场景,图计算
    Cluster manager:
    就是集群管理,Spark自带一个集群管理是单独调度器
    常见集群管理包括Hadoop YARN,Apache Mesos
    紧密集成的优点:
    Spark底层优化了,基于Spark底层的组件,也得到了响应的优化
    紧密集成,节省了各个组件组合使用时的部署,测试等时间
    向Spark增加新的组件时,其它组件,可立刻享用新组件的功能

三、Spark与Hadoop的比较

  1. Hadoop应用场景
    离线处理
    对失效性要求不高
  2. Spark应用场景
    失效性要求高的场景
    机器学习等领域
  3. 比较
    Doug Cutting的观点:
    这是生态系统,每个组件都有其作用,各善其职即可
    Spark不具有HDFS的存储能力,要借助HDFS等持久化数据
    大数据将会孕育出更多的新技术

标签:场景,Hadoop,笔记,学习,Streaming,集群,组件,Spark
来源: https://blog.csdn.net/qq_29974981/article/details/121281516

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有