Spark로 Iceberg · Delta 다루기: 레이크하우스 저장 포맷 연동

spark data-engineering iceberg delta
Spark-Essential 시리즈의 완결편(심화). 앞 단계에서 갈고닦은 Spark를 2026 레이크하우스 스택에 얹습니다. Iceberg·Delta 오픈 테이블 포맷이 오브젝트 스토리지의 파일 더미 위에 메타데이터·스냅샷으로 ACID·시간여행을 세우는 원리를 Spark 관점에서 짚고, 카탈로그 설정·MERGE/업서트·스키마·파티션 진화로 읽고 쓰며...

PySpark 실무: API · UDF · pandas API on Spark

spark data-engineering pyspark udf
현실의 Spark 코드 대부분을 차지하는 PySpark를 파고듭니다. Python↔JVM 경계(Py4J)와 왜 대부분 내장 함수로 충분한지, UDF의 종류(느린 Python UDF vs Arrow 기반 벡터화 Pandas UDF)와 직렬화 비용, 내장 함수 우선 원칙, 그리고 기존 pandas 코드를 최소 수정으로 분산 실행하는 pandas API o...

Spark Structured Streaming: 마이크로배치 · 워터마크 · 상태

spark data-engineering streaming structured-streaming
무한 스트림을 계속 자라는 테이블로 보는 Spark Structured Streaming을 파고듭니다. 배치와 통합된 DataFrame API와 마이크로배치 모델, 이벤트 시간 집계에서 언제 윈도를 닫고 지각 데이터를 버릴지 정하는 워터마크와 윈도잉, 그리고 상태 관리·체크포인트·출력 모드로 exactly-once를 보장하는 방식까지 다룹니다.

Spark Catalyst · Tungsten · AQE: 쿼리 최적화와 코드 생성

spark data-engineering catalyst optimization
DataFrame이 RDD보다 빠른 이유를 파고듭니다. Catalyst가 쿼리를 논리 계획 → 분석 → 최적화된 논리 계획 → 물리 계획으로 변환하며 조건 푸시다운·컬럼 프루닝을 적용하는 과정, Tungsten의 off-heap 바이너리 메모리 관리와 whole-stage code generation, 그리고 런타임 통계로 계획을 다시 짜는 AQE까지...

Spark RDD · DataFrame · Dataset: 세 가지 핵심 추상화와 lazy evaluation

spark data-engineering rdd dataframe
Spark가 데이터를 다루는 세 얼굴 — 계보 기반 내결함성의 저수준 RDD, 스키마로 Catalyst 옵티마이저가 개입하는 DataFrame, 타입 안전을 더한 Dataset — 의 차이와 선택 기준을 정리합니다. 나아가 변환은 계획만 쌓고 액션에서 실행하는 lazy evaluation과, 노드 안에서 끝나는 narrow와 셔플을 부르는 wide 트...

Spark 아키텍처: Driver·Executor·클러스터 매니저와 실행 흐름

spark data-engineering architecture execution
Spark-Essential 시리즈의 1단계. 실행 계획을 세우는 Driver와 task를 수행하는 Executor의 역할·통신, 자원을 배분하는 클러스터 매니저(YARN·Kubernetes·Standalone)와 client/cluster 배포 모델, 그리고 액션→Job→Stage→Task 분해에서 스테이지 경계가 곧 셔플 지점이 되는 실행 흐름을 ...

Spark Essential Curriculum

spark data-engineering curriculum
Data-Engineering-Essential 오버뷰의 '처리' 단계에서 예고된 Apache Spark 심화 스핀오프. 아키텍처(Driver/Executor)부터 RDD/DataFrame/Dataset, Catalyst·Tungsten, 셔플·튜닝, Structured Streaming, PySpark 실무, Iceberg/Delta 연동까지 7단계...