前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spark生态顶级项目汇总

Spark生态顶级项目汇总

作者头像
我是攻城师
发布2018-05-14 15:28:57
1.1K0
发布2018-05-14 15:28:57
举报
文章被收录于专栏:我是攻城师我是攻城师

 现在 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。
  1. Spark Cassandra Connector Cassandra 是一个易扩展、高性能的数据库。 Spark Cassandra Connector 现在是 Spark 和 Cassandra 表间直接交互的连接器,高度活跃的开源软件。 Spark Cassandra Connector 库让你读 Cassandra 表就如同 Spark RDD 一样,同样可以写 Spark RDD 到 Cassandra 表,并可以在 Spark 程序中执行 CQL 语句。
  2. Zepellin Zepellin 是一个集成 IPythoon notebook 风格的 Spark 应用。Zepellin 可以基于 Spark 和 Scala,允许用户很简单直接的在他们的博客或者网站发布代码执行的结果。 Zepellin 也支持其它语言插件,包括 Scala 和 Spark,Python 和 Spark,SparkSQL,HIve,Markdown 和 Shell。
  1. Spark Job Server Spark Job Server 提供 RESTful 接口来提交和管理 Spark jobs,jar 包和 job 上下文。Spark Job Server 提供 Spark 任务相关的运行健康信息。
  2. Alluxio Alluxio 是一个分布式内存文件系统,它在减轻 Spark 内存压力的同时,也赋予 Spark 内存快速读写海量数据的能力。Alluxio 以前叫做 Tachyon,即钨丝。Spark jobs 可以不做任何改变即可运行在 Alluxio 上,并能得到极大的性能优化。Alluxio 宣称:“百度使用 Alluxio 可以提高 30 倍多数据处理能力”。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 我是攻城师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档