본문 바로가기

2021/057

[hive] hive on spark 작업 중 create Spark client due to invalid resource request: Required executor memory (9671), overhead (1706 MB), and PySpark memory (0 MB) is above the max threshold 오류 하이브에서 작업 엔진을 이용하는 중에 스파크 익스큐터의 메모리가 부족하면 이런 오류가 발생할 수 있습니다. 하이브 설정에서 스파크 익스큐터의 메모리를 설정하면 됩니다. 이 경우 스파크 익스큐터의 메모리가 9671로 설정되어 있어서 부족하여 오류가 발생합니다. 따라서 스파크 드라이버와 익스큐터의 메모리를 줄여주면 됩니다. 또는 yarn 설정에서 컨테이너에 메모리를 설정할 수 있는 메모리를 늘려주면 됩니다. Launching Job 1 out of 1 In order to change the average load for a reducer (in bytes): set hive.exec.reducers.bytes.per.reducer= In order to limit the maximum number of r.. 2021. 5. 30.
[hive] hive3의 mr 엔진에서 java.lang.IncompatibleClassChangeError 오류 처리 하이브3에서 mr 엔진을 이용할 때 java.lang.IncompatibleClassChangeError 오류가 발생할 수 있습니다. 라이브러리가 맞지 않아서 발생하는 문제입니다. jersey-json-1.19.jar 라이브러리를 하이브 홈으로 복사합니다. jersey-json 라이브러리를 확인 {HADOOP_HOME}/share/hadoop/common/lib/jersey-json-1.19.jar {HIVE_HOME}/lib 로 복사 hive (default)> show databases; FAILED: Hive Internal Error: java.lang.IncompatibleClassChangeError(com.sun.jersey.json.impl.provider.entity.JSONRootEle.. 2021. 5. 27.
[hive] hive3에서 TEZ 연동시 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument 오류 처리 하둡3, 하이브3에서 TEZ를 연동할 때 라이브러리가 맞지않아서 NoSuchMethodError 가 발생합니다. 하둡3는 guava가 27버전이고, 하이브3는 guava가 19버전이라서 발생합니다. 따라서 라이브러리를 맞춰주면 문제가 해결됩니다. hadoop 3.2.1 guava-27.0 hive 3.1.2 guava-19.0 해결방법 {HIVE_HOME}/lib/guava-19.0.jar 삭제 {HADOOP_HOME}/share/hadoop/common/lib/guava-27.0-jre.jar 를 {HIVE_HOME}/lib/ 에 복사 2021. 5. 27.
[python] 우분투에 파이썬 3.7 설치 우분투(ubuntu)에 파이썬 특정 버전을 설치 하는 방법입니다. 우분투는 apt를 이용해 파이썬을 설치할 수 있습니다. 하지만 특정 버전을 설치 하기 위해서는 파이썬 홈페이지에서 binary 파일을 다운받아서 빌드하면 됩니다. 2021. 5. 27.
[ansible] shell 모듈과 nohup을 이용한 하둡, 하이브 daemon 프로세스 실행 앤서블을 이용해서 하둡, 하이브 데몬을 실행할 때 nohup을 이용하지 않으면 프로세스가 정상적으로 실행되지 않습니다. 앤서블이 서버에 연결 후 프로세스를 실행하고, 연결 종료 후 프로세스가 함께 종료됩니다. 따라서 nohup을 이용하지 않으면 프로세스가 실행되지 않고, 종료됩니다. 기본적으로 shell 모듈은 서비스를 실행하기 위해 디자인된 모듈이 아니기 때문입니다. 서비스를 실행할 때는 service 모듈을 이용하는 것이 좋습니다. 이 예제는 shell 모듈을 이용해야 하는 경우에 사용합니다. 2021. 5. 26.
[hadoop] HDFS의 쿼터 설정 및 설정 상태 확인 HDFS의 관리를 위해서 디렉토리별로 사용제한을 둘 수 있습니다. 파일 개수와 용량 제한을 걸 수 있습니다. 기본 상태는 무제한으로 되어 있기 습니다. HDFS에 설정된 쿼터의 상태는 count 명령을 이용해서 확인할 수 있습니다. -q, -u 옵션을 이용하여 확인할 수 있으며, -v 옵션을 추가하면 헤더 정보를 확인할 수 있습니다. 2021. 5. 20.
[hadoop] 우분투에서 snappy 라이브러리를 설치하고, hadoop에서 인식 체크 우분투 18.04 버전에는 기본적으로 snappy 라이브러리가 없기 때문에 다음과 같은 방법으로 설치하고, 하둡에서 인식하는지 체크할 수 있습니다. 2021. 5. 6.