본문 바로가기
반응형

Python/Spark4

Spark 독학하기 3일차 – 분산 처리가 뭐야.. 🎯 목표Spark의 분산/병렬 처리 개념을 실제 코드 흐름 속에서 이해해 보기Job → Stage → Task → Partition 구조를 익히는 게 목표실무에서 Spark를 언제, 왜, 어떻게 써야 하는지도 감 잡는 것전체 요약Spark는 데이터를 잘게 나눠서(Task), 여러 작업자(Executor)가 병렬로 처리하게 만든 분산 처리 프레임워크다.우리가 코드를 작성하면, 내부적으로 실행 계획(DAG)이 쌓이고, .show() 같은 Action이 호출되는 순간 Job이 실행된다.Job 안에서 중간에 Shuffle이 발생하면 Stage가 나뉘고, 각 Stage는 Partition 개수만큼 Task가 만들어진다.이 구조 덕분에 대용량 데이터를 효율적으로 처리할 수 있지만, 중간 Shuffle 비용은 항상.. 2025. 5. 11.
Spark 독학하기 2일차 – Spark의 기본 개념 구조 🎯 목표 Spark가 왜 필요한지, 어떤 문제를 해결하기 위해 만들어졌는지 이해하기Spark의 내부 구조(Driver, Executor, Cluster Manager)가 어떤 역할을 하는지 파악하기실행이 실제로 어떻게 이루어지는지, Job/Stage/Task 구조를 통해 흐름을 이해하기실습보다는 개념 정리를 중심으로, 이후 실전 학습을 위한 기반 만들기 내용전체 요약Spark는 분산/병렬 처리를 위한 프레임워크이다. 대용량 데이터를 여러 컴퓨터(노드)에 나눠 처리할 수 있게 설계되었다.개발자가 작성한 코드는 Spark 내부에서 실행 계획으로 바뀌며, 그 계획을 바탕으로 Driver가 전체 흐름을 조율하고, Executor가 병렬로 작업을 수행한다.이 모든 구조는 Cluster Manager 위에서 동작.. 2025. 5. 10.
Spark 독학하기 0일차 – Spark를 공부해야겠구만.. 🎯 목표Apache Spark 학습 동기.어떤 언어(PySpark vs Scala)를 선택할지Spark를 공부하려는 이유약 4년간 데이터 엔지니어로 일하면서 파이프라인, 적재, 가공 등 다양한 작업을 경험했지만, 지금까지는 주로 SQL 기반이나 단일 배치 중심의 작업이 많았다. 대규모 데이터를 다루는 데 있어 병렬 처리, 분산 시스템 개념을 실제로 더 깊게 이해하고 싶다는 갈증이 있었다.Spark는 그동안 운영상 일부 파이프라인에 제한적으로 사용한 적이 있었지만, 실전 활용은 극히 제한적이었다. 특히 스칼라로 몇 개의 작업을 구성해 본 정도가 전부였고, 내부적으로 어떻게 동작하는지, 튜닝 포인트가 어디인지, 어떤 방식으로 확장 가능한지에 대한 감이 부족하다고 느껴졌다.→ 그래서 이번 기회에 Spark를.. 2025. 5. 10.
Spark 독학하기 1일차 – M1 맥에서 PySpark 환경 구성 및 테스트 🎯 목표Apache Spark 실습 환경을 M1 MacBook에서 구성PySpark + Jupyter Notebook 조합으로 실습 가능하게 만들기Docker 대신 Colima 기반으로 경량화된 환경 사용내용전체 요약M1 Mac에서 Spark 환경을 Docker로 구성하려다 Docker Desktop의 보안 이슈로 실패했고, 대안으로 Colima를 사용하여 성공적으로 PySpark + Jupyter 환경을 구축했다. 환경 구성 이후 Jupyter에서 SparkSession을 실행하여 Spark 기본 작동 확인까지 완료함. 최소 실행 절차 요약 (터미널 기준)# Colima 및 Docker CLI 설치brew install colimabrew install docker# Colima 실행colima st.. 2025. 5. 10.
반응형