• Ubuntu14.04或16.04下Hadoop及Spark的开发配置


    对于Hadoop和Spark的开发,最常用的还是Eclipse以及Intellij IDEA. 其中,Eclipse是免费开源的,基于Eclipse集成更多框架配置的还有MyEclipse。Intellij分为Community版和Ultimate版,前者免费,后者付费。付费版同样是集成了更多的框架便于开发,主要是针对web开发人员。这里我们讲述两个IDE的配置方法,并推荐使用Intellij完成配置。首先需要明确的是,本文的配置是基于Java语言,基于Scala语言配置Spark开发环境在Intellij下是相似且简单的,这里略过不提。

    1. Eclipse下配置Hadoop及Spark开发环境

    1.1 配置Hadoop开发环境

    在Eclipse下配置开发环境有三种方案。均亲测有效。

    方案一:基于普通的Java项目

    第一步,将插件hadoop-eclipse-plugin-2.6.0.jar放在eclispe的plugins目录下,启动eclipse后,新建普通Java项目,在项目中引入两个依赖包:hadoop-common-2.6.2.jar,hadoop-core-0.20.205.0.jar;

    此处提供下载:链接:http://pan.baidu.com/s/1i4XOQsl 密码:gjqg

    第二步,在Preferences 中配置Hadoop的安装地址,运行项目时程序能够自动加载Hadoop安装目录下的jar包,至此配置完成。

    这种方案在运行时需要选择“Run on Hadoop”选项运行,hadoop-eclipse-plugin-2.6.0.jar插件将会根据第二步中配置的Hadoop路径寻找jar包,因此最终打包后的jar包也最小,最小是6MB左右。打包后的jar包当然也需要使用hadoop jar命令执行,不支持java -jar命令执行。

    方案二:基于Map Reduce项目

    第一步,将插件hadoop-eclipse-plugin-2.6.0.jar放在eclispe的plugins目录下,启动eclipse后,新建Project,选择Map Reduce Project建立新项目;

    第二步,在Preferences 中配置Hadoop的安装地址,运行项目时程序能够自动加载Hadoop安装目录下的jar包,至此配置完成。

    这种方案下不用配置依赖,因为项目已经按照你装好的Hadoop自动装填依赖的jar包。缺点是最终打包后的jar包比较大,最小也有40MB左右,因为包含着所有的需要的Hadoop jar包。正因如此,打包后的jar包既可以使用hadoop jar命令执行,也支持java -jar命令执行。

    方案三:基于Maven构建项目

    直接新建Maven项目,在项目根目录的pom.xml中添加基础的Hadoop依赖项,maven将会自动引入依赖。添加后可能如下所示。

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>malab</groupId>
        <artifactId>hadoop</artifactId>
        <version>1.0-SNAPSHOT</version>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
       <!--这是需要的添加的依赖,按需添加,下面的只是基本配置-->
        <dependencies>
            <!--hadoop-->
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
                <version>2.6.0</version>
            </dependency>
        </dependencies>
    
    </project>
    

    添加后,静静等上几分钟(取决于网速),就配置完成了。

    1.2 配置Spark开发环境:基于Maven构建项目(官网推荐)

    在pom.xml中<dependencies></dependencies>添加依赖项(官网上有说明配置信息:http://spark.apache.org/docs/latest/programming-guide.html):

        <dependencies>
            <!--spark-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-core_2.11</artifactId>
                <version>2.0.2</version>
            </dependency>
            <!--ml-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-mllib_2.10</artifactId>
                <version>2.0.2</version>
            </dependency>
            <!--sql-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-sql_2.10</artifactId>
                <version>2.0.2</version>
            </dependency>
            <!--streaming-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-streaming_2.10</artifactId>
                <version>2.0.2</version>
            </dependency>
            <!--hive-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-hive_2.10</artifactId>
                <version>2.0.2</version>
            </dependency>
    
            <!--hadoop-->
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
                <version>2.6.0</version>
            </dependency>
        </dependencies>
    

    显然,以上配置把所有的spark常用的hadoop用到的jar包依赖都配置了。

    2. Intellij下配置Hadoop及Spark开发环境(推荐)

    由于Intellij下没有插件直接支持,因此推荐使用Maven构建。

    第一步,新建project,选择maven,然后一路下一步,完成后配置pom.xml即可。pom.xml文件配置的<dependencies></dependencies>中的内容与1.2节中一致。

    第二步,到此开发环境配置完成。

    maven配置下导出的jar包会比较大,因为包含了很多maven配置的依赖。如果你想要小一点的导出结果,删除导出的maven依赖即可。当然,这个不是件特别重要的事。

    愿世界和平。

  • 相关阅读:
    Azure DevOps Server 2020.1 新增功能 (TFS)
    Azure DevOps Server 2020.1 升级指南 (TFS)
    Azure DevOps Server:如何在Git历史记录中显示中文姓名
    Azure DevOps Server:集中显示所有团队的燃尽图
    MS中adjust hydrogen功能不能使用的问题
    bat对拍
    CSP 201812-4 数据中心(最小瓶颈生成树)
    CSP 202009
    CSP 202012
    牛客练习赛76
  • 原文地址:https://www.cnblogs.com/shixiangwan/p/6182941.html
Copyright © 2020-2023  润新知