High Performance Spark
를 읽고 간단히 정리해본 글입니다.
잘못된 정보나 오류가 있다면 언제나 지적 부탁드립니다 :)
why Spark?
- Apache Spark는 범용 목적의 고성능 분산 처리 시스템
- 하나 이상의 서버에서 처리할 수 있는 수준 이상의 대용량 데이터 처리 가능
최적화하지 않으면 매우 느리거나 불안정할 수 있다.
- 최적화를 통해 동일 클러스터에서 동일 작업을 100배이상 빠르게 실행되도록 개선도 가능
- 그러나 모든 case에 모든 기법을 적용할 수 있는 것은 아님
- 특히 Spark는 유사한 종류의 다른 프레임워크에 비해 세밀한 설정이 가능하기 때문에 데이터의 구조와 형태에 대해 잘 파악하고 최적화를 적용하는 것이 중요
- 시스템 및 데이터의 특징을 통해 Spark가 어떻게 동작하는지를 이해하는 것이 가장 어려운 수준의 데이터 engineering 이슈를 해결하는 방법
why Scala?
- 스칼라는 파이썬보다 빠름
- 스칼라는 자바 API보다 훨씬 사용하기 쉬움
- 인라인 함수나, Spark API를 사용하는것이나 자바보다 더 편함
- Spark Shell은 정말 강력한 도구인데, 자바에서는 미지원
'Spark' 카테고리의 다른 글
[Spark] repartition vs coalesce 2 (0) | 2022.02.28 |
---|---|
Chapter 2. 스파크는 어떻게 동작하는가? (0) | 2022.01.31 |
[DATA+AI SUMMIT 2021] Monitor Apache Spark 3 on Kubernetes using Metrics and Plugins 요약 (0) | 2021.12.31 |
[Spark] Spark 3.x Structured Streaming의 checkpoint는 k8s환경에서 어떻게 관리해야할까? (0) | 2021.12.31 |
[Spark] repartition vs coalesce (feat. orderBy) (0) | 2021.12.31 |