在大数据计算引擎当中,Spark不能忽视的一个重要技术框架,Spark继承了Hadoop MapReduce的优势,同时实现了计算效率的提升,满足更加实时性的数据处理需求。今天我们就来讲讲Spark生态圈入门。
Spark在设计之初,就是围绕速度、易用性和复杂分析来研发的,当时的背景下,就是MapReduce在实时数据处理上有明显的不足,已经很难满足很多业务场景下的需求。 Spark生态圈核心组件围绕Spark,技术生态圈也不断完善,生态圈的各个组件,在Spark Core的支持下,能够满足更多实际业务场景下的数据处理需求。Spark Core:Spark Core作为Spark引擎的核心,提供基于内存的分布式计算,在Hadoop原生的MapReduce引擎的基础上,继承其优势,改善其不足,减少计算过程当中的迭代运算,大大提升计算效率。 Spark Core 引入了一个全新的概念 —— RDD。RDD(Resilient Distributed Datasets ) ,全称是“弹性分布式数据集”。本质上,RDD 是 Spark 用于对分布式数据进行抽象的数据模型。这种数据模型用于囊括、封装所有内存中和磁盘中的分布式数据实体。任意的分布式作业都可以由 RDD 抽象之间的转换来实现。理论上,如果计算节点内存足够大,那么所有关于 RDD 的转换操作都可以放到内存中来执行,这便是Spark内存计算的由来。Spark Streaming:Spark Streaming基于微批量方式的计算和处理,可以用于处理实时的流数据。它使用DStream,简单来说就是一个弹性分布式数据集(RDD)系列,处理实时数据。Spark SQL:Spark SQL可以通过JDBC API将Spark数据集暴露出去,而且还可以用传统的BI和可视化工具在Spark数据上执行类似SQL的查询。用户还可以用Spark SQL对不同格式的数据(如JSON,Parquet以及数据库等)执行ETL,将其转化,然后暴露给特定的查询。Spark MLlib:MLlib是一个可扩展的Spark机器学习库,由通用的学习算法和工具组成,包括二元分类、线性回归、聚类、协同过滤、梯度下降以及底层优化原语。Spark GraphX:GraphX用于图计算和并行图计算。在这里,Spark的优势是既能处理表视图,也能处理图视图。生态圈其他组件以上所讲的是Spark当中需要掌握的重点组件,而除此之外,还有Tachyon、BlinkDB、Mesos等组件,也提供相应的支持。Tachyon:以内存为中心的分布式文件系统,提供内存级别速度的跨集群框架(如Spark和MapReduce)的可信文件共享,可绕过HDFS,以更快地速度执行。BlinkDB:一个近似查询引擎,用于在海量数据上执行交互式SQL查询。BlinkDB可以通过牺牲数据精度来提升查询响应时间。Mesos:它的设计初衷是作为整个数据中心的一个可拓展的全局资源管理器,而在Spark当中,可以选择独立运行的Standalone 模式,也可以构建于 Yarn 或 Mesos 之上,由它们提供资源管理。 关于大数据Spark框架,Spark生态圈入门,以上就为大家做了一个简单的介绍了。
大数据生态与spark简介
最新推荐文章于 2024-01-18 02:03:45 发布