복붙노트

[HADOOP] 어떻게 외부 항아리 클라우 ​​데라의 하둡을 사용 하는가?

HADOOP

어떻게 외부 항아리 클라우 ​​데라의 하둡을 사용 하는가?

나는 클라우 데라의 하둡 버전 4 내 클러스터에 설치되어 있습니다. 그것은 구글의 프로토 버퍼 항아리 버전 2.4 함께 패키지로 제공됩니다. 내 응용 프로그램 코드에서 내가 프로토 버퍼 버전 2.5으로 컴파일 된 프로토 버퍼 클래스를 사용합니다.

이것은 실행 시간에 해결되지 않은 컴파일 문제가 발생합니다. 외부 항아리 작업을 줄이거 나 클라우 데라는 자신의 서비스를 업그레이드 할 때까지 내가 갇혀 오전 맵을 실행하는 방법이 있나요?

감사.

해결법

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

    1.예를 외부 항아리와 MR 작업을 실행할 수 있습니다.

    예를 외부 항아리와 MR 작업을 실행할 수 있습니다.

    HADOOP_CLASSPATH 모두에 종속성을 추가해야합니다 및 다음 예제와 같은 작업을 제출시 -libjars :

    당신은 현재와 LIB 디렉토리에서 모든 항아리 종속성을 추가하려면 다음을 사용할 수 있습니다 :

    export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:`echo *.jar`:`echo lib/*.jar | sed 's/ /:/g'`
    

    하둡 항아리를 통해 작업을 시작할 때 당신은 또한 -libjars의 사용을 통해 그것을 종속성의 항아리를 통과해야한다는 점을 명심. 내가 사용하려면 :

    hadoop jar <jar> <class> -libjars `echo ./lib/*.jar | sed 's/ /,/g'` [args...]
    

    참고 : SED 명령은 다른 구분 문자를 필요로; HADOOP_CLASSPATH이되어 분리되고 -libjars 분리 될 필요가있다.

    편집 : 당신이 당신의 항아리 (그리고 사전 포장 항아리)을 보장하기 위해 최초의 해석에 사용됩니다 하나입니다 수 클래스 패스를해야하는 경우에는 다음을 설정할 수 있습니다 :

    수출 HADOOP_USER_CLASSPATH_FIRST 사실 =

  2. from https://stackoverflow.com/questions/16122701/how-to-use-external-jars-in-cloudera-hadoop by cc-by-sa and MIT license