[Spark] Spark Standalone과 YARN 클러스터 매니저 비교
Spark Standalone과 YARN이 익스큐터를 배치하고 자원을 나누는 방식과, 같은 설정 키를 두 매니저가 다르게 읽는 지점을 Spark 3.5 기준으로 정리한다.
Spark Standalone과 YARN이 익스큐터를 배치하고 자원을 나누는 방식과, 같은 설정 키를 두 매니저가 다르게 읽는 지점을 Spark 3.5 기준으로 정리한다.
Iceberg 데이터 파일을 압축한 뒤 Spark MERGE의 태스크당 입력 크기가 커지면서 실행 메모리 한도를 넘고 Spill이 증가한 원인을 정리한다.
Delta Lake의 Z-Order가 여러 컬럼 값을 같은 파일에 모으는 원리와 정렬 방식별로 읽는 파일 수의 차이, 적용 방법과 컬럼 선택 기준, Liquid Clustering과의 차이를 정리한다.
Spark standalone 집계 잡에서 반복되던 Spill과 Executor OOM을 History Server 지표로 추적하고, Executor 메모리와 memory.fraction 조정 전후를 비교한다.
Spark on YARN 환경에서 워커 디스크 사용량이 계속 증가한 원인을 추적하고, TRIM과 셔플 파티션 조정, Iceberg merge-on-read 전환 전후를 비교한다.
Apache Iceberg 테이블에 쌓이는 스냅샷과 작은 파일을 다루는 유지 관리 작업과 이를 안전하게 자동화하는 방법을 정리한다.
여러 DBMS의 데이터 타입을 표준 타입으로 정규화하고 PostgreSQL, Iceberg, Spark 타입으로 변환하는 매핑 표를 정리한다.
데이터엔지니어링 필수 개념인 동시성과 병렬성에 대한 이해
스파크에서 JDBC 파티셔닝을 활용해 데이터 읽기 최적화 하기
Apache Iceberg가 데이터 레이크의 파일을 테이블로 관리하는 방식과 카탈로그, 스냅샷, 매니페스트, 데이터 파일의 계층 구조를 정리한다.
데이터 통합 플랫폼 씨터널을 활용한 CDC 데이터 동기화
스파크 세션 및 원격 작업 등을 관리할 수 있는 다양한 도구 알아보기
스파크 애플리케이션 최적화를 위한 실행 단계 이해
PostgreSQL Wrtie-Ahead LOG 설정 구성
로컬에 카프카 설치 및 UI로 Topic 생성하기
Change Data Capture의 개념과 WAL 로그 기반 파이프라인 구축 방법
Spark 기반의 자연어 처리 라이브러리 살펴보기
Livy를 활용한 인터랙티브한 스파크 작업
정적/동적 스크래핑 차이, selenium과 requests 스크래핑 방식 차이
블로그 광고성 데이터 전처리 방법
메시지큐 카프카의 커넥트와 커넥터 개념 및 실습