成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專(zhuān)欄INFORMATION COLUMN

IntelliJ IDEA Windows下Spark開(kāi)發(fā)環(huán)境部署

DevWiki / 1195人閱讀

摘要:運(yùn)行數(shù)據(jù)準(zhǔn)備隨便準(zhǔn)備一個(gè)文檔格式不限,上傳到上。解決因?yàn)樵瓉?lái)是用的版本為相應(yīng)的依賴(lài)包官網(wǎng)已經(jīng)不再支持,所以更新的平臺(tái)的環(huán)境為,相應(yīng)的文檔很少,更改版本為。星期六星期一由為知筆記遷移到。

0x01 環(huán)境說(shuō)明

博客地址:http://www.cnblogs.com/ning-wang/p/7359977.html

1.1 本地

OS: windows 10
jdk: jdk1.8.0_121
scala: scala-2.11.11
IDE: IntelliJ IDEA ULTIMATE 2017.2.1

1.2 服務(wù)器

OS: CentOS_6.5_x64
jdk: jdk1.8.111
hadoop: hadoop-2.6.5
spark: spark-1.6.3-bin-hadoop2.6
scala: scala-2.11.11

0x02 windows端配置 2.1 安裝jdk

配置環(huán)境變量

JAVA_HOME
CLASSPATH
Path
2.2 配置hosts 2.2.1 文件位置

C:WindowsSystem32driversetc

2.2.2 新增內(nèi)容

和集群的hosts文件內(nèi)容一樣

192.168.1.100    master
192.168.1.101    slave1
192.168.1.102    slave2
2.2.3 安裝IntelliJ IDEA

注意插件安裝Maven

2.2.4 IDEA中安裝scala插件

0x03 服務(wù)器端配置 3.1 安裝jdk 3.2 安裝hadoop

配置遠(yuǎn)程訪(fǎng)問(wèn)權(quán)限

3.3 安裝spark 0x04 測(cè)試 4.1 新建maven項(xiàng)目

4.2 添加依賴(lài)包

File -> Project Structure -> Libraries添加spark-assembly-1.6.3-hadoop2.6.0.jar(位置在服務(wù)器端spark/lib/下)

4.3 新建ConnectionUtil類(lèi)

srcmainjava目錄下新建java類(lèi)ConnectionUtil

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;

public class ConnectionUtil {

    public static final String master = "spark://master:7077";

    public static void main(String[] args) {

        SparkConf sparkConf = new SparkConf().setAppName("demo").setMaster(master);
        JavaSparkContext javaSparkContext = new JavaSparkContext(sparkConf);
        System.out.println(javaSparkContext);
        javaSparkContext.stop();
  }
}
4.4 編譯運(yùn)行

如果出現(xiàn)上圖結(jié)果則證明,運(yùn)行正確。

4.5 運(yùn)行JavaWordCount 4.5.1 數(shù)據(jù)準(zhǔn)備

隨便準(zhǔn)備一個(gè)文檔格式不限,上傳到hdfs上。

$ vim wordcount.txt
hello Tom
hello Jack
hello Ning
# 上傳文件
$ hadoop fs -put wordcount.txt /user/hadoop/
# 查看文件是否上傳成功
$ hadoop fs -ls /user/hadoop/
4.5.2 代碼

spark安裝包中的example,指定了jar包和輸入文件的路徑。

import scala.Tuple2;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.FlatMapFunction;
import org.apache.spark.api.java.function.Function2;
import org.apache.spark.api.java.function.PairFunction;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Pattern;
public final class JavaWordCount {
    private static final Pattern SPACE = Pattern.compile(" ");
 public static void main(String[] args) throws Exception {
//      if (args.length < 1) {
//        System.err.println("Usage: JavaWordCount ");
//        System.exit(1);
//      }
  SparkConf sparkConf = new SparkConf().setAppName("JavaWordCount")
            .setMaster("spark://master:7077")
            .set("spark.executor.memory", "512M");
  JavaSparkContext ctx = new JavaSparkContext(sparkConf);
  ctx.addJar("D:workspacesparkJavaWordCount.jar");
  String path = "hdfs://master:9000/user/hadoop/wordcount.txt";
  JavaRDD lines = ctx.textFile(path);
  JavaRDD words = lines.flatMap(new FlatMapFunction() {
      @Override
  public Iterable call(String s) {
        return Arrays.asList(SPACE.split(s));
  }
    });
  JavaPairRDD ones = words.mapToPair(new PairFunction() {
        @Override
  public Tuple2 call(String s) {
            return new Tuple2(s, 1);
  }
    });
  JavaPairRDD counts = ones.reduceByKey(new Function2() {
        @Override
  public Integer call(Integer i1, Integer i2) {
            return i1 + i2;
  }
    });
  List> output = counts.collect();
 for (Tuple2 tuple : output) {
        System.out.println(tuple._1() + ": " + tuple._2());
  }
    ctx.stop();
  }
}
4.5.3 打包

非常重要,否則運(yùn)行會(huì)出現(xiàn)各種錯(cuò)誤,甚至無(wú)法運(yùn)行
File -> Project Structure ->Artifacts點(diǎn)擊綠色“+”,Add-->JAR-->From Modules with Dependencies

輸入main class入口函數(shù)名,將Output Layout下所有jar包刪掉(因?yàn)閟park運(yùn)行環(huán)境已經(jīng)包含了這些包),如果已經(jīng)存在META-INF要先將這個(gè)文件夾刪除。然后Apply,OK
編譯程序:Build-->Build Artifacts...,然后選擇要編譯的項(xiàng)目進(jìn)行編譯

在當(dāng)前工程生成的out目錄下就可以找到輸出的jar包,放到程序中指定的位置(就是addJar()方法中所設(shè)置的路徑)

4.5.4 運(yùn)行程序

0x05 出現(xiàn)的問(wèn)題 5.1 找不到scala.Cloneable的類(lèi)文件

問(wèn)題描述:java: 無(wú)法訪(fǎng)問(wèn)scala.Cloneable 找不到scala.Cloneable的類(lèi)文件
原因:原來(lái)使用的是spark-2.1.0-bin-hadoop2.4沒(méi)有spark-assembly-1.6.3-hadoop2.6.0.jar依賴(lài)包所致。
解決:因?yàn)樵瓉?lái)是用的hadoop版本為2.5.2相應(yīng)的依賴(lài)包官網(wǎng)已經(jīng)不再支持,所以更新的平臺(tái)的hadoop環(huán)境為2.6.5,spark 2.X相應(yīng)的文檔很少,更改版本為1.6.3

Create: 2017-08-12 10:33:55 星期六
Update: 2017-08-14 20:10:47 星期一
update: 2017.10.17
由為知筆記遷移到SF。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/67790.html

相關(guān)文章

  • WindowsIntelliJ IDEA配置Gradle、Spring MVC

    摘要:最近研究了一下,正好把配置的一些東西記錄下來(lái)安裝這里假設(shè)你已經(jīng)學(xué)會(huì)了安裝如果沒(méi)有安裝請(qǐng)先參閱其他教程安裝。去下載,可能會(huì)比較慢。安裝完成后,打開(kāi)壓縮包,解壓到指定的文件夾,然后設(shè)置環(huán)境變量。如果設(shè)置正確,在目錄中輸入正好跳轉(zhuǎn)到你安裝的目錄。 最近研究了一下java,正好把配置的一些東西記錄下來(lái) 安裝Gradle這里假設(shè)你已經(jīng)學(xué)會(huì)了安裝Java,如果沒(méi)有安裝Java,請(qǐng)先參閱其他教程安裝...

    lsxiao 評(píng)論0 收藏0
  • WindowsIntelliJ IDEA配置Gradle、Spring MVC

    摘要:最近研究了一下,正好把配置的一些東西記錄下來(lái)安裝這里假設(shè)你已經(jīng)學(xué)會(huì)了安裝如果沒(méi)有安裝請(qǐng)先參閱其他教程安裝。去下載,可能會(huì)比較慢。安裝完成后,打開(kāi)壓縮包,解壓到指定的文件夾,然后設(shè)置環(huán)境變量。如果設(shè)置正確,在目錄中輸入正好跳轉(zhuǎn)到你安裝的目錄。 最近研究了一下java,正好把配置的一些東西記錄下來(lái) 安裝Gradle這里假設(shè)你已經(jīng)學(xué)會(huì)了安裝Java,如果沒(méi)有安裝Java,請(qǐng)先參閱其他教程安裝...

    lakeside 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<