欢迎关注Hadoop、Spark、Flink、Hive、Hbase、Flume等大数据资料分享微信公共账号:iteblog_hadoop
  1. 文章总数:960
  2. 浏览总数:11,448,910
  3. 评论:3870
  4. 分类目录:102 个
  5. 注册用户数:5828
  6. 最后更新:2018年10月13日
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
iteblog_hadoop
大数据技术博客公众号bigdata_ai
大数据猿:
bigdata_ai

Spark生态系统项目收集

  现在Apache Spark已形成一个丰富的生态系统,包括官方的和第三方开发的组件或工具。后面主要给出5个使用广泛的第三方项目。Spark官方构建了一个非常紧凑的生态系统组件,提供各种处理能力。 下面是Spark官方给出的生态系统组件

  1、Spark DataFrames:列式存储的分布式数据组织,类似于关系型数据表。
  2、Spark SQL:可以执行SQL查询,包括基本的SQL语法和HiveQL语法。读取的数据源包括Hive表、Parquent文件、JSON数据、关系数据库(MySQL等)等。
  3、Spark Streaming:Spark Streaming是Spark核心API,易扩展、高吞吐量、流式数据容错。
  4、MLlib:Spark的机器学习库,由常规的机器学习算法和基础构成,包括但不限于分类算法、回归算法、聚类算法、协调过滤算法、降维算法等。
  5、GraphX:Spark GraphX是一个分布式图处理框架,基于Spark平台提供对图计算和图挖掘的接口,方便用户对分布式图处理的需求。
  6、Spark Core API:Spark提供多种语言的API,包括R、SQL、Python、Scala和Java。

除了上述官方的Spark组件外,还有些是在某种情形下必用的项目。以下只是简单的列出这些重量级项目,而不涉及一些性能指标。

Mesos

  Mesos是开源的资源统一管理和调度平台。抽象物理机的CPU、内存、存储和计算资源,再由框架自身的调度器决定资源的使用者。Mesos是Master/Slave结构,由Mesos-master,Mesos-slave,Framework和executor四个组件构成。为什么官方选用Mesos,而不是Spark standalone模式或者基于Yarn框架?由Spark开发者所写的书《Learning Spark》:Mesos优于其它两个资源框架是因为Mesos的细粒度调度,这样可让多用户运行Spark shell占有更少的CPU。

Spark Cassandra Connector

  Cassandra是一个易扩展、高性能的数据库。 Spark Cassandra Connector现在是Spark和Cassandra表间直接交互的连接器,高度活跃的开源软件。 Spark Cassandra Connector库让你读Cassandra表就如同Spark RDD一样,同样可以写Spark RDD到Cassandra表,并可以在Spark程序中执行CQL语句。

Zepellin

  Zepellin是一个集成IPythoon notebook风格的Spark应用(使用和搭建可以参见《Apache Zeppelin使用入门指南:安装》《Apache Zeppelin使用入门指南:编程》《Apache Zeppelin使用入门指南:添加外部依赖》)。Zepellin可以基于Spark和Scala,允许用户很简单直接的在他们的博客或者网站发布代码执行的结果。Zepellin也支持其它语言插件,包括Scala和Spark,Python和Spark,SparkSQL,HIve,Markdown和Shell。

Spark Job Server

  Spark Job Server提供RESTful接口来提交和管理Spark jobs,jar包和job上下文。Spark Job Server提供Spark任务相关的运行健康信息。

Alluxio

  Alluxio是一个分布式内存文件系统(就是大家熟悉的Tachyon项目,最近改名为Alluxio,目前最新的版本是1.0.0。),它在减轻Spark内存压力的同时,也赋予Spark内存快速读写海量数据的能力。Spark应用程序可以不做任何改变即可运行在Alluxio上,并能得到极大的性能优化。Alluxio宣称:“百度使用Alluxio可以提高30倍多数据处理能力”。

本博客文章除特别声明,全部都是原创!
转载本文请加上:转载自过往记忆(https://www.iteblog.com/)
本文链接: 【Spark生态系统项目收集】(https://www.iteblog.com/archives/1598.html)
喜欢 (6)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!
(2)个小伙伴在吐槽
  1. 刚才大概看了一下Zepellin,感觉也是可以提交job到集群里计算,那Zepellin和Spark Job Server二者的区别是什么?Zepellin的结果提供可视化?只是这样吗?
    龙卷风2016-12-20 15:45 回复
  2. 希望多介绍一些关于job server的内容。这里说的就是这个项目吗?https://github.com/spark-jobserver/spark-jobserver
    龙卷风2016-12-20 15:11 回复