2024/11 8

Spark Structured Streaming Service LAG 모니터링

Spark Structured Streaming 서비스의 Kafka LAG 모니터링을 위해 kafka-offset-committer 적용 Kafka Offsets Committer Kafka를 DataSource로 사용하는 Structured streaming query 의 한 배치 작업에서 쿼리가 처리되면 offsets을 commit할 수 있도록 돕는다. 특정 cousumer 그룹의 파티션별 end offsets 추출하여 KafkaConsumer의 commitSync API를 호출하여 강제 commit한다. Kafka Offsets Committer 적용 1. 의존성 추가 : spark-sql-kafka-offset-committer_2.12 - https://mvnrepository.com/artif..

IT 잡동사니 2024.11.15

deltalake - hive 연동

Hive와 연동 ! delta-hive connector 사용 delta-hive-assembly_2.12-3.1.0.jar 를 lib directory 에 추가 hive-site.xml의 hive.aux.jars.path 프로퍼티에 위에서 추가한 경로를 추가해줌. 혹은 아래와 같이 beeline 등으로 붙어서 CLI에서 설정도 가능SET hive.input.format=io.delta.hive.HiveInputFormat; SET hive.tez.input.format=io.delta.hive.HiveInputFormat; Hive와 연동하고 hdfs에 적재된 deltalake 테이블을 hive external table로 생성해보자. 데이터 타입이 정확히 일치하도록. set parquet.column..

카테고리 없음 2024.11.15

MongoDB logRotate (crontab or logRotate 적용)

logRotate (crontab or logRotate 적용) 1.crontab //crontab 실행 crontab -e //export VISUAL=vim; crontab -e //매일 23시 50분 사용자 시그널을 통해 신규 로그파일 생성하도록 설정 (로그 파일은 timestamp가 기록되며, UTC로 생성된다) 50 23 * * * /bin/kill -SIGUSR1 `ps -ef | grep mongod | grep -v grep | awk '{print $2}'` >> /home/test/mongodb/logs/logrotate.crontab.err 2>&1 //설정 조회 crontab -l //cron 재실행 service cron restart service cron status 2.3.5..

IT 잡동사니 2024.11.15

Spark 성능 튜닝

1. Spark Executor 는 몇개나?instance는 개수, core 수가 중요예를 들어, executor.instance가 10개, executor.core 수가 2 라면,10개의 instance에 각각 core가 2개가 실행되므로, 총 20개.거기에 executor.memory를 1G로 설정한다면 core당 memory가 할당되어 총 20G가 할당된다. - Kafka 를 소스로 한다면, Kafka 파티션 수를 보자. 파티션 당 core가 할당되는 것이 좋다.1 task, 1 core- 하나의 task를 1개의 core에서 처리하는데, 한번에 128MB 안으로 읽을 수 있도록 설정하는 것이 좋다.기본이 128MB이기 때문. 넘어가면 그 만큼 나눠서 읽어야 하기 때문에 성능이 떨어진다. 파티션의 ..

Spark 2024.11.10

[Docker] Ubuntu 도커 설치 / 도커 삭제 / 버전 업그레이드 / 도커 명령어까지 쉽다쉬워

도커를 설치해놓은지 너무 오래돼서 버전 업그레이드를 한다.이전 버전을 깔끔하게 지우고, 신규 버전으로 업그레이드 해보자. 이전에 설치해놓은 도커가 없다. 신규 설치다! 하는 사람들은 3번부터 시작~ 1. 일단 도커 종료sudo service docker stopsudo rm -rf /var/run/docker.sock 2. 기존 데이터 삭제for target in docker-compose docker.io docker-doc  docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $ target ; done 근데 잘 삭제가 안됐다.아래 명령어로 다시해보자.remove -> autoremove로 바꿈for target in doc..

IT 잡동사니 2024.11.05

Zeppelin multi instance (H/A) 구성

Zeppelin H/A 구성하기 안정성을 위해 H/A 구성을 하려고 하는데.. 보통 싱글 노드로 많이 사용하는 것 같다.도큐먼트에도 멀티노드 구성에 대한 이야긴 없다.어떻게 하지. .ChatGPT한테 물어봤다.열심히 말하는데 믿음이 안간다. 구글에 찾아보니  Zeppelin distributed architecture design 문서를 발견! 이것이 좀 도움이 될 것 같다. 우선 H/A 구성을 위해서 아래의 작업을 진행했다. 시작해보자~!1. 클러스터 구성${ZEPPELIN_HOME}/conf/zeppelin.site.xml 에 클러스터 정보 추가 zeppelin.cluster.addr zeppelin-server1-ip:6000,zeppelin-server2-ip:6000,zeppelin-serv..

IT 잡동사니 2024.11.05

Zeppelin Spark interpreter - yarn client / cluster 모드 실행, pyspark추가

Spark interpreter 설정  1. spark-interpreter.jar 가 잘 있는지 확인하자${ZEPPELIN_HOME}/interpreter/spark/ 하위에 spark-interpreter-0.11.1.jar가 있어야 한다.ls -al로 조회해보면 사이즈가 0일 수 있다.껍데기만 있을 수도 있으니 꼭 확인할 것!  2. Spark interpreter 설정${ZEPPELIN_HOME}/conf/interpreter.json을 연다.spark 설정에서 아래 세가지 설정을 해준다.- SPARK_HOME : 스파크 경로 지정(로컬에 이미 구성되어 있어야 함)- spark.master : yarn- spark.sumit.deployMode : client 혹은 cluster 입력 * Clie..

카테고리 없음 2024.11.05