[Spark] Apache Spark 설치
·
Data Engineering/Spark
이번 글에서는 Apache Spark 설치 과정을 소개할 예정이다. 큰 목차는 다음과 같다.1. 버전 정보2. SSH 설정3. Spark 설치4. 환경 변수 설정5. Apache Spark 클러스터 구성6. Spark 실행7. Spark 종료8. 마무리  버전 정보본 글에서 사용하는 환경은 다음과 같다.OS: Ubuntu 20.04Java: openjdk-11-jdkHadoop: Hadoop 3.4.0Spark: Spark 3.5.1 SSH 설정Spark는 Hadoop과 마찬가지로 노드 간 통신과 협력이 필요하기 때문에 SSH 설정을 필수적으로 해야한다.이미 되어 있다면 skip해도 된다. 먼저, 사용할 모든 노드의 /etc/hosts 파일에 사용할 노드들의 IP와 이름을 지정해준다. $ sudo vim..
[Spark] Spark Ecosystem과 Spark Architecture
·
Data Engineering/Spark
이전 글에서 간단히 Apache Spark에 대해 소개하였다.  이번 글에서는 Spark Ecosystem을 구성하는 주요 요소와 각각의 역할을 간단히 정리할 예정이다.또한 Spark Architecture와 실제 작업 흐름이 어떻게 돌아가는지 소개할 예정이다. Spark Ecosystem Spark Ecosystem은 크게 Spark Core, Libraries, Programming interface, Resource Management, Storage로 나뉜다. 각각에 대해 알아보자 Spark CoreSpark Core는 Apache Spark의 중심 컴포넌트로, 모든 추가 기능과 라이브러리들이 이 위에서 동작하며 분산 데이터 처리와 클러스터 자원 관리를 담당한다.특히, RDD(Resilient D..
[Spark] Apache Spark(아파치 스파크) 개요
·
Data Engineering/Spark
이번 글에서는 Apache Spark에 대해 소개 하려고 한다. 큰 목차는 다음과 같다.1. Apache Spark 등장배경2. What is Apache Spark? Apache Spark 등장 배경Spark가 뭔지 알기 전에 왜 Spark가 등장했는지 먼저 알아보자. Spark는 Hadoop MapReduce의 한계를 극복하기 위해 탄생했다. 빅데이터의 처리의 필요성이 급증하면서, MapReduce는 데이터 처리의 핵심 기술로 자리 잡았지만 몇가지 단점이 드러났다.1. 느린 처리 속도MapReduce는 디스크 기반으로 데이터를 처리모든 중간 결과를 디스크에 저장하고 다시 읽어오는 방식은 I/O 오버헤드를 발생시킴2. 복잡한 프로그래밍 모델MapReduce는 데이터 처리 워크플로우를 Map과 Reduc..
[Hadoop] Apache Hadoop 설치
·
Data Engineering/Hadoop
이번 글에서는 Hadoop 설치 과정에 대해 소개 할 예정이다. 글 시작하기에 앞서, 이전 글들을 보고 오는 것을 추천한다.[Hadoop] Apache Hadoop 소개[Hadoop] HDFS란?[Hadoop] MapReduce와 YARN 버전 정보본 글에서 사용하는 환경은 다음과 같다.OS: Ubuntu 20.04Java: openjdk-11-jdkHadoop: Hadoop 3.4.0  Java 설치Hadoop은 Java 기반으로 개발되었다.따라서, Hadoop의 실행과 관련된 모든 프로세스는 Java로 작성된 프로그램이므로 Java를 먼저 설치해주어야한다. 사용할 모든 노드에서 설치를 진행해야 한다. $ sudo apt update$ sudo apt list openjdk* # 모든 버전 목록 조회$..
[Hadoop] MapReduce와 YARN
·
Data Engineering/Hadoop
이번 글에서는 MapReduce와 YARN에 대해 알아보자 이전 글과 이어지니 보고오는 것을 추천한다.[Hadoop] HDFS란?  What is MapReduce?  MapReduce는 2004년 Google에서 처음 제안한 대용량 데이터 처리 모델로, 분산 환경에서 데이터 처리 작업을 쉽게 수행할 수 있도록 설계되었다. 이러한 MapReduce는 HDFS에 저장된 대규모 데이터를 효율적으로 분석하고 처리할 수 있게 도와준다. 이름에서 볼 수 있듯 Map과 Reduce라는 두 단계로 나뉘게 된다. Map입력 데이터를 키-값 쌍으로 변환하여 병렬 처리가 가능하도록 데이터 구조를 단순화 하는 작업예를 들어, 위 그림에서는 각 단어를 키로 하고, 출현 횟수를 값으로 매핑Map 단계에서 다루는 Input 데이..
[Hadoop] HDFS란?
·
Data Engineering/Hadoop
이번 글에서는 Core Hadoop 모듈 중 하나인 HDFS (Hadoop Distributed File System)에 대해 소개하려고 한다. 이전 글과 이어지니 보고 오는 것을 추천한다.[Hadoop] Apach Hadoop 소개 [Hadoop] Apache Hadoop 소개이번 글에서는 Apache Hadoop에 대한 소개를 하려고 한다. Hadoop을 이해하기 위해서는 빅데이터(Big Data)에 대한 이해가 필요하다. 빅데이터에 대해 먼저 알아보자 빅데이터(Big Data)?  21세기에 들어laewonjeong.tistory.com What is HDFS (Hadoop Distribued File System)? HDFS는 대용랑 파일 분산 시스템으로 저비용 하드웨어에 배포 및 실행되도록 설계..