일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 데이터 엔지니어
- 데이터 사이언티스트
- 데이터분석
- 자기개발
- SSAFY
- 티스토리챌린지
- 독학
- metacodem
- 부트캠프
- matacodem
- 머신러닝
- 싸피
- 메타코드m
- 데이터엔지니어
- JLPT
- 개발자부트캠프
- 메타코드
- 데이터전문가
- 데이터애널리스트
- 파이썬
- streamlit
- 데이터분석가
- ssafy 13기
- ML
- 자기계발
- DS
- 오블완
- 데이터사이언티스트
- 일본어공부
- metacode
- Today
- Total
아카이브
[메타코드m] <Spark를 활용한 데이터 엔지니어링 이론 + 실습 강의> 본문
안녕하세요! 여러분~
메타코드에서 이번에 Spark 강의 장학생을 모집한다는 내용을 보고
바로 지원하게 되었습니다.
실질적으로 ML이나 Data 분야의 직무는 이런 대기업일수록
분산형 데이터베이스를 사용하고 있더군요.
제가 일하고 싶은 네이버웹툰의 data engineer 직무에서는
대놓고 Hadoop, spark의 경험이 필요합니다.
그렇기에 이번 학기에 대학교 수업에서도 그렇고
강의로 학습할 수 있는 경험이 필요하다고 생각했어요.
안그래도 혼자 공부하기 힘들었는데
강의가 주어진다니..!!
냅다 바로 신청했습니다.

메타코드는 데이터 분석, AI 분야에서 프로그래밍 기술을
알려주는 교육 플랫폼입니다.
제 블로그를 보고 계신 분들이라면 익숙하실텐데요!😅
저는 데이터 분석 직무를 진로로 결정 하면서
실무적인 프로젝트를 진행해보고 싶었어요.
아무래도 학년이 곧 취업을 생각해야하다보니
더욱 그랬던 것 같습니다.
그러다가 메타코드라를 알게 된 후, 필요한 능력을 키우고자
조금은 열심히 달렸던 것 같습니다
메타코드에서는
굉장히 질좋은 자료와 강의 수준 그리고 저와 같이
이벤트의 진행이 많아 여러 혜택을 받을 수 있으니
저처럼 꼭 데이터 분석, AI, ML 전문가가 되고 싶으신 분들이라면
꼭 한 번 들어가셔서 성장의 기회를 가지셨으면 좋겠습니다.
메타코드M
AI 강의 & 커뮤니티 플랫폼ㅣ300만 조회수 기록한 IT 현직자들의 교육과 함께 하세요
metacodes.co.kr
강사님 프로필이신데요! 학석사를 하셨더라구요. 제가 가고 싶은 직무분야 계신 분이고 커리어도 너무 따라가고 싶은 강사님이셨어요. 대학원에서 석사까진 해봐야하나 싶은 고민이 더 들었습니다.
[Apache Spark] 스파크에 대해 알아보자 + 파이썬 스파크 설치 [임시]
데이터를 추출할 때 우리는 도서관에 가는 상황과 유사하다.책장에 너무 많은 책들이 있고 우리는 이걸 일일히 책장에 도달해 책을 찾고 꺼내온다.이 과정에서 속도 개선이 필요하기에 메모리(
meorudady.tistory.com
추가적으로 이전 게시글에서도 관련 공부를 진행한 내용을 작성해두었으니 확인하시면 좋을 것 같습니다.
1. 아파치 스파크의 개요
- Hadoop MapReduce의 문제점
- 부하가 심하고 속도가 느림 - 처리 과정마다 HDD 거쳐 공유
- 하나의 워크 노드가 잘못되면 계속 다시한다고 했지?
- MapReduce 프로그래밍은 어렵고 복잡함
- Aparche Spark
- MapReduce 속도 개선 : scala 언어 이용, in- memory 계산
- Hive, Strom, Mahout과 연동
- 자바, 파이썬, 스칼라, R을 지원함
- Spark 적용 환경
- 환경 : Hadoop, Mesos, stand alone, cloud
# 2. 스파크 설치 및 실행
$ wget https://dlcdn.apache.org/spark/spark-3.3.0/spark-3.3.0-bin-hadoop3.tgz
# 해당 링크에서 tgz 파일 다운
$ tar xvzf spark-3.3.0-bin-hadoop3.tgz-C /Downloads
# tar xvzf 다운
$ sudo mkdir-p /usr/local/spark
# 파일 만들기
$ sudo chown-R stat /usr/local/spark
# 로컬에 파일 소유권 변경
$ cd /Downloads/ cd spark-3.3.0-bin-hadoop3
# 드라이브에 다운
$ sudo cp-R ./ /usr/local/spark
# 파일 다운
```
하둡과 스파크 차이점
처리 모델
- Hadoop은 MapReduce 모델을 사용하며, 데이터를 디스크 기반으로 처리합니다.
- Spark는 Resilient Distributed Datasets (RDDs)와 유향 비순환 그래프(DAG) 실행 엔진을 사용하여 메모리 내 처리를 수행합니다
데이터 처리 방식
- Hadoop은 주로 배치 처리에 적합합니다.
- Spark는 실시간 데이터 처리, 반복적 알고리즘, 대화형 쿼리 등 다양한 유형의 데이터 처리를 지원합니다
사용 편의
- Spark는 Java, Python, Scala, R 등 다양한 프로그래밍 언어를 지원하여 개발자 친화적입니다.
- Hadoop MapReduce는 상대적으로 복잡하고 프로그래밍이 어려울 수 있습니다.
비용
- Hadoop은 일반적으로 더 경제적인 옵션입니다.
- Spark는 대용량 RAM을 필요로 하므로 클러스터 비용이 더 높을 수 있습니다
# 스파크 특징
## **RDD (Resilient Distributed Dataset)**
### 복구 가능한 분산 데이터
RDD는 Spark의 핵심 데이터 모델로, 다음과 같은 특징을 가집니다:
- 분산 저장된 데이터 요소들의 집합
- 병렬 처리 가능
- 장애 발생 시 자체 복구 기능
### RDD의 복구에는 감동이 있다.
- 손상된 RDD의 복구는 기록된 RDD의 생성 과정을 이용해서 복구함
- 생성된 RDD는 변경되지 않는다 (불변성)
RDD가 변경되는 과정을 기억하지 않고, 변경 시 새로운 RDD를 만들어 생성 과정을 기록
A를 만들 때 a가 필요했어, 이후 변경을 하려하면 a를 기반으로 A를 만들고 B로 변경하여 사용
- In - memory 여야하는 이유가 있네 속도도 빠르고
RDD의 생성 방법:
1. sc.parallelize(): 기존 컬렉션(예: 리스트)에서 RDD 생성
2. sc.textFile(): 외부 데이터 소스(예: 텍스트 파일)에서 RDD 생성
3. 기존 RDD에 변환 연산(Transformation) 적용
### 생성한 RDD는 어디에 저장할까?
- 로컬 파일 시스템
- HDFS
## 파티션 :
- RDD 데이터가 클러스터를 구성하는 여러 서버에 나누어 저장될 때 데이터 단위를 의미함
## **Job과 Executor의 관계**
- **Job**: Spark에서 Job은 사용자가 제출한 전체 Spark 프로그램을 의미
하나의 Job은 여러 개의 작은 태스크(tasks)로 나뉘어 실행
- **Executor**: Executor는 클러스터의 각 워커 노드에서 실행되는 프로세스
태스크를 실행하고 데이터를 메모리나 디스크에 저장하는 역할
'공모전 및 대외활동 > 앰배서더' 카테고리의 다른 글
[메타코드m] <Spark를 활용한 데이터 엔지니어링 이론 + 실습 강의> 2주차 (1) | 2024.12.25 |
---|---|
[메타코드m] kaggle 데이터를 활용한 실전 머신러닝 | IT기업 Data Scientist 현직자 (마무리) (2) | 2024.11.07 |
[SSAFY 13기 모집 공고] 비전공자라고? 오히려 좋아~ (5) | 2024.10.31 |
[데이터 사이언티스트] kaggle 데이터를 활용한 실전 머신러닝 | IT기업 Data Scientist 현직자 (8) (2) | 2024.10.31 |
[데이터 사이언티스트] kaggle 데이터를 활용한 실전 머신러닝 | IT기업 Data Scientist 현직자 (7) (0) | 2024.10.28 |