[Spark] Spark Streaming(PySpark)으로 Kafka 메세지 수신하기
데이터 이모저모/Spark2023. 12. 24. 15:51[Spark] Spark Streaming(PySpark)으로 Kafka 메세지 수신하기

🧐 개요 이번 포스트는 Spark Streaming 기능을 사용해 Kafka 채널에 발행된 메세지를 수신하는 방법을 설명합니다. Apache Spark는 Kafka에서 발행한 메세지를 스트리밍 처리하도록 기능적으로 지원하고 있습니다. 일반적으로는 JAVA API 어플리케이션을 통해 Spark Streaming 작업을 구현한다고 들었습니다만 저는 PySpark 스크립트를 작성해 구현해보도록 하겠습니다. 참고로 제가 테스트를 진행하는 환경은 다음과 같습니다. Spark Version: v3.5.0 JAVA Version: openjdk-8-jdk Kafka Host: localhost 🖍️ 공식 가이드 참조하기 Apache Spark 공식 홈페이지에 Kafka 스트리밍 관련 가이드 문서를 제공하고 있습니다...

[Spark] CPU 및 메모리 사용량 설정하기
데이터 이모저모/Spark2023. 12. 22. 16:20[Spark] CPU 및 메모리 사용량 설정하기

🧐 개요 특별한 설정을 추가하지 않으면, Apache Spark는 작업을 수행하는 과정에서 컴퓨터의 CPU 및 메모리 리소스를 전부 사용하도록 설정되어 있습니다. 따라서 무거운 작업을 반복적으로 구동하는 경우, 컴퓨터의 리소스 범위를 초과하게 되어 에러가 발생하거나 시스템 리소스가 다운되는 경우가 발생하게 됩니다(저 역시도 로컬 머신에서 360억 row의 parquet 데이터를 읽는 도중 시스템이 멈추는 상황이 발생하였습니다). 다행히도 Spark에서는 작업 수행 과정에서 사용할 리소스 양을 설정하는 환경 설정을 기능적으로 제공하고 있습니다. 방법이 어렵지 않기 때문에 오늘은 CPU 및 메모리 사용량을 설정하는 방법을 다루겠습니다. 📙 공식 가이드 확인하기 spark-env.sh 스크립트에 Apache ..

image