복붙노트

[HADOOP] 하둡 외부 항아리

HADOOP

하둡 외부 항아리

나는 서버에 하둡 작업을 실행하려합니다. 버전은 0.20.2입니다.

나는 실행하고, 항아리의 큰 금액을 가지고 :

hadoop jar GenData.jar -libjars /path/jar1,path/jar2,...

I는 해당 클래스는 단지 내부에있는 경우에도 아래의 오류를 얻고있다 :

해결법

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

    1.당신은 하둡 클라이언트 측에서이 예외를 받고있는 것처럼, 맵리 듀스 드라이버 코드 실행 클라이언트 JVM에서 일어나는 본다. 하둡 -libjars에서 / 감속기를 매퍼에 의존 단지를 추가하는 데 사용되는 일반적인 옵션입니다. 하둡 명령을 실행하기 전에 다음과 같은 환경 변수를 설정할 수 있습니다 설정 클라이언트에 항아리를 추가하기위한 귀하의 경우.

    당신은 하둡 클라이언트 측에서이 예외를 받고있는 것처럼, 맵리 듀스 드라이버 코드 실행 클라이언트 JVM에서 일어나는 본다. 하둡 -libjars에서 / 감속기를 매퍼에 의존 단지를 추가하는 데 사용되는 일반적인 옵션입니다. 하둡 명령을 실행하기 전에 다음과 같은 환경 변수를 설정할 수 있습니다 설정 클라이언트에 항아리를 추가하기위한 귀하의 경우.

    export HADOOP_CLASSPATH=<PATH_to_jar>/Jar1:<PATH_to_jar>/Jar2;    
    

    (콜론 ":"귀하의 경우에 당신은 클래스 org.apache.avro.mapreduce.AvroKeyInputFormat가 들어있는 항아리를 추가 할 수 있습니다, 1 개 이상의 단지를 지정하는 데 사용할 수 있습니다).

    새로운 편집

    여기에 우선 당신은 클래스 org.apache.avro.mapreduce.AvroKeyInputFormat가 들어있는 항아리를 찾을 필요가있다. 당신은 항아리 * 아 브로 - mapred의 .jar 내부 클래스 (인터넷에서 브로 - mapred-version.jar의 호환 버전을 가져 오기) 위의 명령을 사용하여 클래스 경로에 같은 포함을 찾을 수 있습니다.

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

    2.당신은 아 브로 - mapred 의존성을 누락되었습니다.

    당신은 아 브로 - mapred 의존성을 누락되었습니다.

  3. from https://stackoverflow.com/questions/27994644/hadoop-external-jars by cc-by-sa and MIT license