最近要接触数据分析,需要快速入门,就想在Ubuntu下配置IDEA和Spark编程环境。

1.下载jdk

#java /etc/profile .zshrc, 或者直接在终端输入
export JAVA_HOME=/usr/lib/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

2.下载scala并且拷贝到/usr/local/scala

开始配置在/etc/profile中输入下面的内容

vim /etc/profile

#scala
export SCALA_HOME=/usr/local/scala
export PATH=$SCALA_HOME/bin:$PATH

#scala compile
alias sa='scala'

$source /etc/proflle使file生效。

$scala -version来查看版本

Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL

3.idea  安装scala插件

下载对于版本的scala插件,首先到idea中去搜索对于的版本,然后对于下载

下载好之后,直接解压放到idea中plugins目录下。

4.spark 使用

下载完之后,解压出来,直接使用。(./spark-shell ./pyspark)

5.IEDA安装

选择社区版,下载完之后,解压出来。进入bin目录,运行idea.sh脚步来启动IDEA.

6.插件安装(vim+scala+sbt)

在file->Settins->Plugins,搜索scala插件进行安装,完成之后,就会用scala类型的项目了。一定要把自己的网速搞上去。

7.在IEDA中配置jdk,scala,spark依赖

8.编写demo程序---scala---Spark

  1)scala项目

  2)Spark项目

6、打包导出到集群运行。

6.1 如果pom.xml文件中存在hadoop或者spark的依赖,请在打包之前注释掉。因为集群已经有包了,注释掉既能减少包的大小,又能避免某些jar版本冲突。

6.2 Intellij中点击“File - Project Struction - Artifacts - + - Jar - From modules with dependencies…”,填写modules、Main Class以及路径等,点击OK生成jar包。

File->Project Structure->在右侧选择Artifacts->JAR->From modules with dependencies

填写该JAR包名称和调整输出内容

【注意】的是默认情况下"Output Layout"会附带Scala相关的类包,由于运行环境已经有Scala相关类包,所以在这里去除这些包只保留项目的输出内容

6.3 Intellij中点击“Build- Build artifacts… ”,选择刚生成的jar包进行build。

6.4 将打包好的jar包上传到服务器某路径下。

6.5 执行提交命令:

spark-submit WhereIsYourJar 其他参数

bin/spark-submit --master spark://hadoop1:7077 --class class3.Join --executor-memory 1g LearnSpark.jar hdfs://hadoop1:9000/class3/join/reg.tsv hdfs://hadoop1:9000/class3/join/clk.tsv

9debug

编程的时候,避免不了的就是调试IEDA debug.

10.Spark源码阅读环境

Ubuntu-Java-Scala-Spark-IEDA-configure的更多相关文章

  1. 在IntelliJ IDEA中创建和运行java/scala/spark程序

    本文将分两部分来介绍如何在IntelliJ IDEA中运行Java/Scala/Spark程序: 基本概念介绍 在IntelliJ IDEA中创建和运行java/scala/spark程序 基本概念介 ...

  2. Spark基础排序+二次排序(java+scala)

    1.基础排序算法 sc.textFile()).reduceByKey(_+_,).map(pair=>(pair._2,pair._1)).sortByKey(false).map(pair= ...

  3. java+hadoop+spark+hbase+scala+kafka+zookeeper配置环境变量记录备忘

    java+hadoop+spark+hbase+scala 在/etc/profile 下面加上如下环境变量 export JAVA_HOME=/usr/java/jdk1.8.0_102 expor ...

  4. brdd 惰性执行 mapreduce 提取指定类型值 WebUi 作业信息 全局临时视图 pyspark scala spark 安装

    [rdd 惰性执行] 为了提高计算效率 spark 采用了哪些机制 1-rdd 基于分布式内存数据集进行运算 2-lazy evaluation  :惰性执行,即rdd的变换操作并不是在运行该代码时立 ...

  5. docker 通过commit方法创建镜像(Tomcat+Java+Scala)

    前一阵试了试写Dockerfile创建docker image,但有时全靠Dockerfile写实在有些难度,退而求其次试一试使用commit来创建镜像: 想了想干脆创建一个Java+Scala+To ...

  6. Eclipse+maven+scala+spark环境搭建

    准备条件 我用的Eclipse版本 Eclipse Java EE IDE for Web Developers. Version: Luna Release (4.4.0) 我用的是Eclipse ...

  7. Akka.NET是Java/Scala 流行框架Akka的一个 .NET 开源移植

    Akka.NET v1.0 已发布,支持Mono Akka.NET 是Java/Scala 流行框架Akka的一个 .NET 开源移植.可用于构建高并发,分布式和容错事件驱动的应用在 .NET 和 M ...

  8. 【站长起步】阿里云+Ubuntu+java 7+ Tomcat 7 +Nginx1.6 +Mysql 5.6

    本文记载了在阿里云ubuntu+java 镜像环境下搭建站点server环境中遇到的的错误和解决方式. 作为一个年轻人,是肯定不会去用alidata这个现成的环境的.怎么办? 所有删除.立刻创建一个 ...

  9. 今天又犯了Java/Scala里面substring的错误

    每次都误以为是 substring(startIndex, length) 其实是 substring(startIndex, endIndex) 嗯 Java/Scala 跟 C++ 是不一样的.

  10. 大数据技术之_27_电商平台数据分析项目_02_预备知识 + Scala + Spark Core + Spark SQL + Spark Streaming + Java 对象池

    第0章 预备知识0.1 Scala0.1.1 Scala 操作符0.1.2 拉链操作0.2 Spark Core0.2.1 Spark RDD 持久化0.2.2 Spark 共享变量0.3 Spark ...

随机推荐

  1. Thinking in C++: 第1章 为什么C++会成功

    本文内容摘抄自C++经典书籍:<Thinking in C++>   操作概念:OOP程序像什么 我们已经知道,用C 语言编写的过程程序就是一些数据定义和函数调用.要理解这种程序的含义,程 ...

  2. 如何通过ftell和fseek来获取文件大小

    #include <stdio.h> int main () { FILE * pFile=NULL; long size; pFile = fopen ("myfile.txt ...

  3. vmware vms migration to openstack

    Converting a VMware Workstation virtual machine to KVM Leave a commentPosted by rbgeek on August 13, ...

  4. windows 删除服务命令

    在dos窗口下执行 sc delete  服务名( 例如 mysql) C:\Program Files\MySQL\MySQL Server 5.6\

  5. Mac OS X Shell 脚本和终端命令

    系统 重启 Mac OS X: 1 shutdown - r now 关闭 Mac OS X: 1 shutdown now 电源管理/省电 获取当前电源管理设置的信息 1 pmset -g 设置显示 ...

  6. Css定位-定位

    在CSS中一共有N种定位方式,其中,static ,relative,absolute三种方式是最基本最常用的三种定位方式.他们的基 本介绍如下. static默认定位方式 relative相对定位, ...

  7. iOS个别界面旋转问题

    /*是否应该自动旋转屏幕**/ - (BOOL)shouldAutorotate{ return YES; } /*是否支持屏幕旋转并指明旋转方向**/ - (UIInterfaceOrientati ...

  8. 戴明PDCA方法

    戴明PDCA方法:即Plan(计划).Do(执行).Check(检查)和Action(处理)的缩写. P(plan)计划: 包括方针和目标的确定以及活动计划的制定; D(do)执行: 执行就是具体运作 ...

  9. SPOJ 416 - Divisibility by 15(贪心)

    糟烂的代码啊...  这个题目思路很简单——末位只可能为0和5,所有数字的和肯定被3整除 没有0和5的肯定不行 否则,把所有数字求和 如果被3整除,则从大到小输出 如果除3余1,则按以下顺序——删1: ...

  10. linux file命令

    1. file 是检测文件类型的命令.2. 文件类型就文件组织的方式,通常不同的文件类型执行不同的标准.例如我们熟知的:txt , doc , xls , pdf ...3. file 命令的简单用法 ...