Spark是什么

 

  • Apache Spark是一个快速的、多用途的集群计算系统,相对于Hadoop MapReduce将中间结果保存在磁盘中,Spark使用了内存保存中间结果,能在数据尚未写入磁盘时在内存中进行运算。
  • Spark只是一个计算框架,不像Hadoop一样包含了分布式文件系统和完备的调度系统,如果要使用Spark,需要搭载其它的文件系统和成熟的调度系统

 

Spark的特点

 

  • 速度快

  1. Spark在内存运行时速度是Hadoop MapReduce的100倍

  2. 基于磁盘的运行速度大概是Hadoop MapReduce的10倍

  3. Spark实现了一种叫RDDs的DAG执行引擎,其数据缓存在内存中可以进行迭代处理

 

  • 易用

df = spark.read.json("logs.json")
df.where("age > 21") \
  .select("name.first") \
  .show()
  1. Spark 支持Java、Scala、Python、R、SQL等多种语言的API

  2. Spark支持超过80个高级运算符使得用户非常轻易的构建并行计算程序

  3. Spqrk可以使用基于Scala、Python、R、SQL的Shell交互式查询

 

  • 通用

Spqrk提供一个完整的技术栈,包括SQL执行,Dataset命令式API。机器学习库MLlib,图计算框架GraphX,流计算SparkStreaming

 

  • 兼容

  1. Spark可以运行在Hadoop Yarn,Apache Mesos,Kubernets,Spark Standalone等集群中

  2. Spqrk可以访问HBase,HDFS,Hive,Cassandra在内的多种数据库

 

 

Spark的组成

 

Spark最核心的功能是RDDs,RDDs存在于spark-core这个包内,这个包也是Spqrk最核心的包。同时Spark在spark-core的上层提供了很多工具,以便于使用不同类型的计算。

 

  • Spark-Core是整个Spark的基础,提供了分布式任务调度和基本的I/O功能

 

  • Spark的基础的程序抽象是弹性分布式数据集(RDDs),是一个可以并行操作,有容错的数据集合

    • RDDs可以通过引用外部存储系统的数据集创建(如HDFS,HBase),或者通过现有的RDDs转换得到

    • RDDs抽象提供了Java、Scala、Python等语言的API

    • RDDs简化了编程复杂性,操作RDDs类似通过Scala或者Java8的Streaming操作本地数据集合

     

  • Spark SQL

    • Spark SQL在spark-core基础之上带出了一个名为DataSet和DataFrame的数据抽象化的概念

    • Spark SQL提供了在Dataset和DataFrame之上执行SQL的能力

    • Spark SQL提供了DSL,可以通过Scala、Java、Python等语言操作DataSet和DataFrame

    • 它害支持使用JDBC/ODBC服务器操作SQL语言

     

  • Spark Streaming

    • Spark Streaming充分利用spark-core的快速调度能力来运行流分析

    • 它截取小批量的数据并可以对之运行RDD Transformation

    • 它提供了在同一个程序中同时使用流分析和批量分析的能力

  • MLlib

    • MLlib是Spark上分布式机器学习的框架,Spark分布式内存的框架,比Hadoop磁盘式的Apache Mahout快上10倍,扩展性也非常优良

    • MLlib可以使用许多常见的机器学习和统计算法,简化大规模机器学习

    • 汇总统计,相关性,分层抽样,假设检定,随机数据生成

    • 支持向量机,回归,线性回归,逻辑回归,决策树,朴素贝叶斯

    • 协同过滤,ALS

    • K-means

    • SVD奇异值分解,PCA主成分分析

    • TF-IDF,Word2Vec,StandardScalar

    • SGD随机梯度下降,L-BFGS

  • GraphX

    GraphX是分布式图计算框架,提供了一组可以表达图计算的API,GraphX还对这种抽象化提供了优化运行

 

 

 

Spark和Hadoop的异同

 

 

 

 

 

Logo

大数据从业者之家,一起探索大数据的无限可能!

更多推荐