Mac Spark安装及其IDE使用

一、首先搭建hadoop环境

https://blog.csdn.net/jiuweiC/article/details/104414651

二、安装scala

命令行执行:brew install scala
执行完成后,终端输入:scala -version 进行查看,如下表明安装成功:

 scala -version
Scala code runner version 2.12.8 -- Copyright 2002-2018, LAMP/EPFL and Lightbend, Inc.

然后在环境变量中增加scala相关的变量,命令行输入:vim ~/etc/profile进行编辑,增加环境变量:

export SCALA_HOME=/usr/local/Cellar/scala/2.12.8
export PATH=$PATH:$SCALA_HOME/bin

三、安装spark

1、安装spark
进入Apache Spark官网进行Spark的下载:http://spark.apache.org/downloads.html

下载完之后解压,并将解压后将文件夹名称改为 spark ,
的文件夹移动到/usr/local/目录下

2、 配置环境变量

命令行输入:vim /etc/profile进行编辑,增加环境变量:

export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin

然后保存退出,执行source /etc/profile,使之生效。

5.3 配置spark-env.sh

进入到Spark目录的conf配置文件中:cd /usr/local/spark/conf,执行命令:cp spark-env.sh.template spark-env.sh将spark-env.sh.template拷贝一份,然后打开拷贝后的spark-env.sh文件:vim spark-env.sh,在里面加入如下内容:

export SCALA_HOME=/usr/local/Cellar/scala/2.12.6
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_MEMORY=4G

配置好之后,命令行执行:spark-shell,如果出现如下所示的画面,就表明spark安装成功了:

20/08/18 10:40:36 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://10.43.115.201:4040
Spark context available as 'sc' (master = local[*], app id = local-1597718441420).
Spark session available as 'spark'.
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /___/ .__/\_,_/_/ /_/\_\   version 2.4.6
      /_/
         
Using Scala version 2.11.12 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_202)
Type in expressions to have them evaluated.
Type :help for more information.

如果提示以下内容,则找不到本机地址。一般多见于切换网络之后,切回原网络可以正常执行。

java.net.BindException: Can't assign requested address: Service 'sparkDriver' failed after 16 retries (on a random free port)! Consider explicitly setting the appropriate binding address for the service 'sparkDriver' (for example spark.driver.bindAddress for SparkDriver) to the correct binding address.

若仍无法执行则对比ip绑定信息是否正确
1.查看spark-env.sh绑定的ip信息
export SPARK_MASTER_IP=localhost
如果不是直接绑定的ip值
vim /etc/hosts查看实际的ip
2.查看当前使用的ip
输入以下命令,找到inet对用的ip

ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
	options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
	inet 127.0.0.1 netmask 0xff000000 
	inet6 ::1 prefixlen 128 
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
	nd6 options=201<PERFORMNUD,DAD>

3.将绑定ip改为inet处对应的ip

四、IDE开发

1.官网下载intellij
jetbrains.com/idea/
2.安装scala插件
安装时顺便安装scala插件,如果当时没有安装
preference->Plugins 安装scala重启ide
在这里插入图片描述
3.导入项目
选择导入项目

选择项目的pom文件进行打开
在这里插入图片描述
导入依赖,右键maven->选择第一项
在这里插入图片描述
如果你是国内的网,请先点击2,配置国内镜像,这里给出ali镜像

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
                     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                     xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<mirrors>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
</mirrors>
</settings>

5.新建项目
在这里插入图片描述
新建后项目结构如下
在这里插入图片描述
在该文件下新建文件

五、常用命令

1.提交任务
hdfs dfs -put SpeakerBigData-1.0-SNAPSHOT.jar /spark/hadoop/my_jars/
2.提交依赖
3.执行任务
/data/software/spark-2.2.1/bin/spark-submit --class com.anker.eufy.device.DeviceRePurchase --master yarn --conf spark.default.parallelism=9 --num-executors 6 --driver-memory 3g --executor-memory 2g --executor-cores 2 --deploy-mode cluster --jars hdfs:/spark/hadoop/my_spark_jars/eufy-1.0-SNAPSHOT-jar-with-dependencies.jar /tmp/eufy-1.0-SNAPSHOT.jar 1,1
4.杀死任务
yarn application -list 查询所有的任务;
然后使用yarn application -kill

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值