Spark(火花)快速、通用的大数据处理引擎框架

一、什么是Spark(火花)?

是一种快速、通用处理大数据分析的框架引擎。

二、Spark的四大特性

1.快速:
Spark内存上采用DAG(有向无环图)执行引擎非循环数据流和内存计算支持。 内存上比MapReduce快速100倍,磁盘上快10倍左右

MapReduce存储读取在磁盘上,大数据批量处理系统

2.简洁性

编程起来很简单,Spark由Scala编写,方法式操作

Scala-Python-java

3.通用性

一站式相当于JAR包,结合SQL、流、库、图形、Apache Spark

4.运行方式环境

单独运行 集群 hadoop 云端

Spark与MapReduce(数据的处理引擎)的相比的区别?

1.基本原理

MapReduce是基于磁盘的大数据批量处理系统

Spark:基于RDD(弹性分布式数据处理集)数据处理,显式的将RDD数据存储到磁盘或者内存中

2.从模型上

MapReduce可以处理批量数据,适用于日志分析挖掘

Spark适合数据的挖掘

3.容错性

a)数据的容错性:

b)节点的容错性:spark lineage

Spark的编译

1.SBT编译  --scala编译

2.maven编译

安装jdk

下载地址:www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html

安装maven

下载地址:maven.apache.org/download.cgi

2、配置环境变量

# sudo vim /etc/profile


JAVA_HOME=/opt/data02/jdk-9.0.1
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

MAVEN_HOME=/opt/data02/apache-maven-3.5.2
PATH=$PATH:$MAVEN_HOME/bin

#SCALA
SCALA_HOME=/opt/data02/SCALA
PATH=$PATH:$SCALA_HOME/bin

3、使配置文件立即生效

source /etc/profile

需要翻墙的两个注意事项

1.sudo vi /etc/resolv.conf  添加

nameserver 8.8.8.8

nameserver 8.8.4.4

2.在maven 的setting.xml中添加

<mirror>
            <id>osc_thirdparty</id>
            <mirrorOf>thirdparty</mirrorOf>
            <url>http://maven.oschina.net/content/repositories/thirdparty/</url>
        </mirror>

3.打包编译

原文地址:https://www.cnblogs.com/gyadmin/p/8258227.html