오류13 [hadoop] [스크랩] Line에서 하둡 클러스터를 운영하면서 발생한 장애 상황 대응 방법 Line에서 하둡 클러스터를 운영하면서 발생한 장애 상황을 정리한 것입니다. 데이터 엔지니어링 관련 소프트웨어 장애 대응 사례 에서 상세한 내용을 확인할 수 있습니다. 짧게 요약하면 다음과 같습니다. hadoop.registry.rm.enabled=false로 설정 HDFS의 휴지통 설정을 켜놓으면 삭제 데이터가 많을 때는 HDFS에 부담이 될 수 있으므로 삭제 간격을 잘 조절 Zeepline의 버그에 의한 오류가 발생할 수 있으니 버전업, 버그 리포트를 잘 확인 하이브 테이블의 파티션이 많으면 스파크 드라이버가 힘들 수 있으니 파티션을 잘 설정 Apache Hadoop YARN 리소스 매니저 failover 발생 문제와 해결 방안 현상 하둡 클러스터에서 동작하는 애플리케이션의 수가 늘어나면서 리소스 매.. 2020. 6. 4. [Maven] 메이븐 빌드시 PKIX path building failed 오류 해결 방법 메이븐 빌드를 처리할 때 PKIX 오류가 발생할 경우가 있습니다. 보통 내부망에서 사용하는 인증서가 자바의 인증서 목록에 등록되어 있지 않을 때 발생합니다. PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 해결방법 자바의 인증서에 내부망의 인증서를 등록하면 됩니다. keytool 명령어는 사용하고자 하는 자바의 bin 폴더 아래 존재합니다. 여기에 인증서 목록(key store)의 위치를 지정하고, 인증서 파일의 경로(file)를 입력하면 됩니다. 각 경로는 절대 경로를 입력해도 됩니다. %J.. 2019. 11. 1. [hadoop][yarn] Caused by: java.lang.IllegalArgumentException: Illegal capacity of 4.0 for children of queue root for label=CORE 오류 해결 YARN의 커패시티 스케줄러를 설정하면서 root큐 아래 설정된 하위큐가 사용할 수 있는 코어(CORE) 레이블의 용량(capacity)의 합이 100을 넘어서 발생하는 오류입니다. capacity-scheduler.xml에 설정된 yarn.scheduler.capacity.root.[큐이름].accessible-node-labels.CORE.capacity 값의 총합이 100을 넘지 않도록 수정하고 yarn rmadmin -refreshQueues를 입력하여 큐 설정을 변경합니다. $ yarn rmadmin -refreshQueues 19/10/31 04:20:14 INFO client.RMProxy: Connecting to ResourceManager at /10.11.60.235:8033 refr.. 2019. 10. 31. [oozie][slf4j] SLF4J: Class path contains multiple SLF4J bindings. 오류 SLF4J를 이용하는 여러 가지 라이브러리를 함께 이용할 때 다음과 같은 오류가 발생할 수 있습니다. 해결 방법은 중복된 라이브러리를 정리해 주는 것입니다. 설치되어 있는 상태라면 아래의 경우 중복된 2개의 라이브러리중 하나를 삭제(rm) 또는 이동(mv) 예를 들면 rm /usr/lib/oozie/lib/slf4j-simple-1.6.6.jar 명령으로 jar 파일 삭제 빌드가 가능한 상황이라면 메이븐이나 그래들의 명령을 이용해 중복된 라이브러리는 빼고 로드하도록 설정 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/usr/lib/oozie/lib/slf4j-log4j12-1.6.6.jar!/or.. 2019. 10. 25. [spark] AWS EMR에서 Caused by: java.lang.ClassNotFoundException: org.apache.kafka.common.serialization.ByteArrayDeserializer 오류 발생시 해결 방법 AWS-EMR 에서 카프카와 스파크를 연동할 때 다음의 오류가 발생하면 kafka-client jar 파일을 추가해 주면 됩니다. scala> val query = df.writeStream.outputMode("append").format("console").start() java.lang.NoClassDefFoundError: org/apache/kafka/common/serialization/ByteArrayDeserializer at org.apache.spark.sql.kafka010.KafkaSourceProvider.createSource(KafkaSourceProvider.scala:74) at org.apache.spark.sql.execution.datasources.DataSource.. 2019. 10. 14. [R] R을 이용하여 CSV 파일을 읽을 때 첫번째 문자가 깨지는 오류 해결 방법 R을 이용하여 파일을 읽을 때 첫 번째 칼럼의 이름이나 첫번재 데이터의 문자가 깨지는 경우가 있습니다. 이는 UTF-8 형식 문서의 BOM으로 인하여 문자가 깨진것으로 인식하기 때문입니다. 이를 해결하기 위하여 read.csv(fileEncoding="UTF-8-BOM") 처럼 fileEncoding을 BOM형식을 확인하도록 선언하여 주면 됩니다. # UTF-8의 BOM으로 인하여 파일이 깨짐 > mlbstat = read.csv(file = "mlb-player-stats-Batters.csv", header = T) > summary(mlbstat) 癤풮layer Team Pos G AB R H X2B Adeiny Hechavarria: 3 BAL : 28 1B: 76 Min. : 1.00 Min. .. 2019. 9. 16. [intellij] Cannot start compilation: the output path is not specified for module 오류 해결 intellij에서 프로그램 git에서 프로젝트를 내려 받거나 외부의 프로젝트를 가져오는 경우 프로젝트 설정이 되어 있지 않아서 이런 오류가 발생합니다. 이때 'OK'를 클릭하거나, File - Project Strecture를 클릭하면 다음의 설정이 나옵니다. 여기서 Project compiler output: 부분을 설정하여 주면 됩니다. 2019. 8. 20. [oozie] 우지 명령어 실행중 발생하는 Oozie URL 설정 오류 우지의 cli 명령어를 실행할 때 OOZIE_URL이 설정되어 있지 않고, 프로퍼티로 -oozie 값을 전달하지 않으면 다음의 오류가 발생한다. java.lang.IllegalArgumentException: Oozie URL is not available neither in command option or in the environment at org.apache.oozie.cli.OozieCLI.getOozieUrl(OozieCLI.java:711) at org.apache.oozie.cli.OozieCLI.createXOozieClient(OozieCLI.java:911) at org.apache.oozie.cli.OozieCLI.jobsCommand(OozieCLI.java:1544) at org.. 2018. 7. 30. [sqoop] sqoop 처리중 Streaming result set com.mysql.jdbc.RowDataDynamic is still active. 오류 처리 sqoop 을 이용하여 import, export 처리중 다음과 같은 오류가 발생하는 경우가 있다. 3376 [uber-SubtaskRunner] ERROR org.apache.sqoop.manager.SqlManager - Error reading from database: java.sql.SQLException: Streaming result set com.mysql.jdbc.RowDataDynamic@6b80c0fb is still active. No statements may be issued when any streaming result sets are open and in use on a given connection. Ensure that you have called .close() on a.. 2017. 3. 7. [hive] java.net.URISyntaxException: Relative path in absolute URI: file:./tmp/yarn 오류 처리 하이브 처리중 다음과 같은 오류가 발생하는 경우는 scratchdir 를 설정해 주면된다. 아래의 오류는 getScratchDir() 메소드를 호출하다가 오류가 발생한것을 알 수 있다. 따라서 아래의 설정을 해주면 된다. hive.exec.scratchdir/tmp/hivehive.exec.local.scratchdir/tmp/hive 위의 설정은 하이브 처리중 사용하는 플랜 파일이나, 임시 파일들을 저장하기 위하여 사용한다. 2017-01-13 07:33:08,521 INFO [hive-job uber-SubtaskRunner] org.apache.hadoop.hive.ql.exec.SerializationUtilities: Serializing MapredWork using kryo2017-01-13.. 2017. 1. 17. [hive][error] 하이브의 mysql 커넥터 오류 수정 우지를 이용하여 하이브 액션 처리시 다음의 오류가 발생한다. Caused by: MetaException(message:For direct MetaStore DB connections, we don't support retries at the client level.)at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.reconnect(HiveMetaStoreClient.java:263)at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:88)at com.sun.proxy.$Proxy40.alter_partitions(Unknown Sou.. 2016. 11. 24. [hive][error] MetaException(message:Metastore contains multiple versions) 처리 AWS의 EMR에서 하이브를 이용하다 보면 한번씩 이런 오류가 발생할 때가 있다. 원인은 하이브의 메타스토어 중 VERSION 테이블에 여러개의 정보가 들어가 있어서이다. 해당 테이블에는 버전정보가 하나, 다시말해 1row 만 있어야 하는데 하이브 소스에서 해당 정보가 없으면 insert 하는 로직이 있어서 두개의 정보가 들어가서 오류가 발생한다. 이럴경우 VERSION 테이블에 1번 row 의 데이터외에 나머지 정보는 모두 지워버리면 된다. 하이브의 DB 정보는 hive-site.xml 파일을 확인하면 DB 접속 정보를 알 수 있다. 이 정보를 이용하여 DB에 접속하여 VERSION 테이블의 정보를 지우면 된다. http://www.popit.kr/hive-metastore-contains-multip.. 2016. 10. 7. [오류] 리듀서 처리중 Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. 오류 다음의 오류가 발생하면 해결방법은 2개가 있는 것 같다. 우선 하나는 mapreduce.tasktracker.http.threads 를 수정하는 것이고, 다른하나는 slave 파일에 호스트 정보를 추가하는 것이다. 또는 작업을 다시한번 돌려도 될 것 같다. Caused by: java.io.IOException: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. 1번 mapred-site.xml 의 mapreduce.tasktracker.http.threads 값을 기본 40에서 더 큰수로 설정 하고 하둡을 재시작한다. mapreduce.tasktracker.http.threads: 맵의 출력 데이터를 리듀스 태스크에게 제공하기 위한 태스크 트래커의 워커 스레드개수 .. 2016. 2. 15. 이전 1 다음