0. 배경 이번에는 Spark Cluster를 docker swarm을 사용하여 구축했던 과정을 기록하려 합니다. Spark Cluster를 왜 도커 스웜 위..? 🤔 라고 묻는다면... 난처하다! 이 환경을 구축하였을 때의 상황은, Spark 도입이 필요함 (User): 운영자님! 지금 프로그램이 계속 에러가 납니다. 고쳐주세요! (Me): (dmesg 로그 확인 후) 음... Out Of Memory Killer (OOM) 이 프로그램을 강제 종료하였네요 ! 파일이 200GB를 넘어가서 그러네요.. 대용량의 데이터를 처리하는 프로그램이 있었는데, 처음에는 60GB 이내의 데이터를 처리할 것을 예상하고 개발을 하였었다. 하지만 데이터가 점점 커지면서 한대의 컴퓨터에서 multi-threading 혹은 ..
Data Engineer/spark
이번에는 Spark Cluster를 하나의 머신에서 간편하게 구축하는 과정을 기록하려 합니다. 아래 표는 사용 환경입니다. 하지만 docker 와 docker-compose 그리고 os 버젼은 컨테이너화 과정이기 때문에 큰 영향은 없을 것입니다. type version OS Ubuntu 20.04 docker Docker version 23.0.1 docker-compose version 1.27.4 앞서 언급했듯이 docker-compose를 통하여 간편히 하나의 머신에서 spark master와 worker 두개를 띄울 것입니다. 이 환경은 production, 즉 운영에서 쓰이기에는 무리가 있습니다. spark의 concept부터가 여러 대의 머신의 memory를 사용하여 대용량의 데이터를 처리하는..
What is Spark? 아파치 스파크 (Apache Spark)는 고성능 분산 데이터 처리 및 분석 프레임워크로, 대규모 데이터 집합을 처리하고 복잡한 데이터 분석 작업을 수행하는 데 사용됩니다. 아파치 스파크는 오픈 소스로 개발되었으며, 다양한 언어로 API를 제공하여 사용자가 Java, Scala, Python, R 등에서 사용할 수 있습니다. 이번 시간에는 가볍게 로컬 환경에서 스파크를 다운받고, 실행해보겠습니다 😗 Installing Spark 다운로드 cd ~ wget https://www.apache.org/dyn/closer.lua/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgz 아니면 공식사이트에서 직접 다운받을 수도 있습니다. https://spark..