본문 바로가기

Spark2

Spark 이해하기 스파크(Spark) 아파치 스파크는 인메모리 기반의 대용량 데이터 고속처리 엔진으로 범용분산 클러스터 컴퓨팅 프레임 워크입니다. 그렇다면 여기서 인메모리는 뭘까요. 데이터를 하드디스크가 아닌 메인 메모리에서 데이터를 저장하고 수행하는 작업입니다. 인메모리의 단점은 메모리에 데이터를 저장하기 때문에 저장 공간이 한정적입니다. 또한 갑자기 프로세스가 종료되면 데이터가 유실될 수 있습니다. 스파크가 빠르다는건 빅데이터의 인 메모리 연산이 가능하다는 것입니다. 여기서 캐시란? 원본 데이터를 통해 연산된 값을 미리 저장해두는 임시 저장소 입니다. 즉, 데이터의 읽기 성능을 개선시키기 위해 db와같은 영구 저장소로부터 빠르게 읽어올 수 있는 메모리영역에 저장해두는 방식입니다. 결국 캐시는 빠른 속도를 위해 사용되는.. 2021. 12. 13.
Batch Processing과 Stream Processing 배치처리(Batch Processing) 배치(Batch) == 일괄 배치 프로세싱( Batch Processing) == 일괄 처리 많은 양의 데이터를 정해진 시간에 한번에 처리하는 것 1. 한정된 대량의 데이터 2. 특정 시간 3. 일괄 처리 전통적으로 쓰이는 데이터 처리 방법 Batch Processing을 언제 사용할까 1. 실시간성을 보장하지 않아도 될 때 2. 데이터를 한꺼번에 처리할 수 있을 때 3. 무거운 처리를 할때 (예 ML학습) 4. 매일 다음 14일의 수요와 공급을 예측 5. 매주 사이트에서 관심을 보인 유저들에게 마케팅 이메일 전송 6. 매주 발행하는 뉴스레터 7. 매주 새로운 데이터로 머신러닝 알고리즘 학습 8. 매일 아침 웹스크래핑/크롤링 9. 매달 월급 지급 배치프로세싱은 어.. 2021. 12. 13.