BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Spark生态顶级项目汇总

| 作者 侠天 关注 2 他的粉丝 发布于 2016年3月7日. 估计阅读时间: 4 分钟 | QCon北京2018全面起航:开启与Netflix、微软、ThoughtWorks等公司的技术创新之路!

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的邮件和网页通知

现在Apache Spark已形成一个丰富的生态系统,包括官方的和第三方开发的组件或工具。后面主要给出5个使用广泛的第三方项目。

Spark官方构建了一个非常紧凑的生态系统组件,提供各种处理能力。 下面是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组件外,还有些是在某种情形下必用的项目。以下只是简单的列出这些重量级 项目,而不涉及一些性能指标。

  1. Mesos
    Mesos是开源的资源统一管理和调度平台。抽象物理机的CPU、内存、存储和计算资源,再由框架自身的调度器决定资源的使用者。
    Mesos是Master/Slave结构,由Mesos-master,Mesos-slave,Framework和executor四个组件构成。
    为什么官方选用Mesos,而不是Spark standalone模式或者基于Yarn框架?由Spark开发者所写的书《Learning Spark》:Mesos优于其它两个资源框架是因为Mesos的细粒度调度,这样可让多用户运行Spark shell占有更少的CPU。
  2. Spark Cassandra Connector
    Cassandra是一个易扩展、高性能的数据库。 Spark Cassandra Connector现在是Spark和Cassandra表间直接交互的连接器,高度活跃的开源软件。 Spark Cassandra Connector库让你读Cassandra表就如同Spark RDD一样,同样可以写Spark RDD到Cassandra表,并可以在Spark程序中执行CQL语句。
  3. Zepellin
    Zepellin是一个集成IPythoon notebook风格的Spark应用。Zepellin可以基于Spark和Scala,允许用户很简单直接的在他们的博客或者网站发布代码执行的结果。
    Zepellin也支持其它语言插件,包括Scala和Spark,Python和Spark,SparkSQL,HIve,Markdown和Shell。

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

  5. Alluxio
    Alluxio是一个分布式内存文件系统,它在减轻Spark内存压力的同时,也赋予Spark内存快速读写海量数据的能力。Alluxio以前叫做Tachyon,即钨丝。Spark jobs可以不做任何改变即可运行在Alluxio上,并能得到极大的性能优化。Alluxio宣称:“百度使用Alluxio可以提高30倍多数据处理能力”。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT