복붙노트

[HADOOP] 0.9.1을 hadoop에서 실행 2.2.0 Maven 의존성

HADOOP

0.9.1을 hadoop에서 실행 2.2.0 Maven 의존성

다음과 같이 pom.xml에 Apache Spark maven 종속성을 설정합니다.

    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.10</artifactId>
        <version>0.9.1</version>
    </dependency>

그러나이 종속성은 "hadoop-client-1.0.4.jar"및 "hadoop-core-1.0.4.jar"을 사용하고 프로그램을 실행하면 "org.apache.hadoop.ipc"오류가 발생합니다. RemoteException : 서버 IPC 버전 9가 클라이언트 버전 4 "와 통신 할 수 없습니다. 이는 hadoop 버전을 1.0.4에서 2.2.0으로 전환해야 함을 나타냅니다.

업데이트 :

다음 해결책은이 문제를 해결하는 올바른 방법입니까?

    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.10</artifactId>
        <version>0.9.1</version>
        <exclusions>
            <exclusion> 
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-core</artifactId>
            </exclusion>
            <exclusion> 
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
            </exclusion>
        </exclusions> 
    </dependency> 
    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-client</artifactId>
        <version>2.2.0</version>
    </dependency> 

많은 도움을 주셔서 감사합니다.

해결법

  1. ==============================

    1.Spark 1.2.0은 hadoop 2.2.0에 따라 다릅니다. 스파크 의존성을 1.2.0 (또는 그 이상)으로 업데이트하면 문제를 해결할 수 있습니다.

    Spark 1.2.0은 hadoop 2.2.0에 따라 다릅니다. 스파크 의존성을 1.2.0 (또는 그 이상)으로 업데이트하면 문제를 해결할 수 있습니다.

  2. ==============================

    2.Hadoop 버전 용으로 Spark를 다시 컴파일하십시오. "Hadoop 버전에 대한 참고 사항"(http://spark.apache.org/docs/0.9.1/)을 참조하십시오. 그들은 편리하게 2.2.0에 대한 예제를 제공한다.

    Hadoop 버전 용으로 Spark를 다시 컴파일하십시오. "Hadoop 버전에 대한 참고 사항"(http://spark.apache.org/docs/0.9.1/)을 참조하십시오. 그들은 편리하게 2.2.0에 대한 예제를 제공한다.

    SPARK_HADOOP_VERSION=2.2.0 sbt/sbt assembly
    

    그러면 온라인 항아리에서 Hadoop을 제외하는 대신 pom.xml에 포함해야하는 새로운 jar $ SPARK_HOME / assembly / target / scala-2.10 / spark-assembly- * jar가 생성됩니다.

    자신의 저장소 (예 : Nexus)를 이미 호스팅하고 있다면 여기에 업로드하십시오 (이것이 내가하는 일이며 훌륭하게 작동합니다). 어떤 이유로 저장소에 업로드 할 수 없다면, Maven의 install : install-file이나 여기에있는 답 중 하나를 사용하십시오. Maven : 상대 경로로 jar에 종속성을 추가하십시오

  3. from https://stackoverflow.com/questions/23938633/spark-0-9-1-on-hadoop-2-2-0-maven-dependency by cc-by-sa and MIT license