# Hadoop Ecosystem

6개의 포스트
post-thumbnail

Spark 아키텍쳐와 실행

스파크는 현시점에서 빅 데이터 처리의 표준으로 인식된다. Scala, Java, Python 등 여러 언어를 지원하며 SQL부터 Streaming 처리 뿐 아니라 ML 라이브러리까지 자체적으로 포함되어 있다. 스파크 어플리케이션의 아키텍처 스파크란? 스파크의 정확한 정의를 보자. 스파크는 통합 컴퓨팅 엔진이며, 데이터를 병렬로 처리하는 라이브러리 집합이다. MapReduce 엔진으로만 데이터 처리 (특히 머신러닝 알고리즘)를 하는 데, 단계별로 맵리듀스 잡을 개발해야 하고, 단계마다 디스크에 결과를 저장하게 되는데, 이는 실행 속도 또한 다소 느리게 만들었다. Spark 주요 개념 스파크를 이해하기 위해 두 가지 필수 용어를 알고가자. Resilient Distributed Datasets (RDD): 스파크가 다루는 데이터의 최소 단위이며, 스파크 내에서 데이터 처리할 때, 실패에 대한 내결함성을 보장해준다. (실패 지점에서부터 태스

2023년 1월 24일
·
0개의 댓글
·
post-thumbnail

Hadoop Yarn 아키텍쳐

Hadoop을 배우게 되면, MapReduce 다음으로 Yarn의 개념을 가장 많이 접하게 되는데, 대부분은 단순히 리소스 매니저라는 단어 정도로만 머릿속에 넣고, 지나간다. 하지만, 문제 해결을 하는 데 있어서, 문제의 본질과 핵심에 대해 깊이 알지 못하면 결국 그것을 해결하지 못한다는 믿음에 근거하여, 정리를 남기고자 한다. 먼저 Yarn이 Hadoop 2.0 부터 나오게 된 배경부터 살펴보자. Hadoop 1.0 Hadoop 1.0에서는 Data Processing 부분과 Resource Management 부분을 하나의 Layer로 관리해왔음을 알 수 있는데, 이를 좀 더 자세히 말하자면 Job Tracker와 Task Tracker라는 두 개의 구성 요소를

2023년 1월 24일
·
0개의 댓글
·
post-thumbnail

Hadoop-ecosystem - Docker container로 구축해보기 (3)

프로젝트 github : https://github.com/cattmerry/docker-hadoop 설치한 hadoop이 정상적으로 실행되는지 확인을 위해 테스트 진행. hdfs에 파일을 저장하고 이 파일을 처리하는 mapreduce application을 yarn을 통해 배포하여 실행한다. 간단한 텍스트파일을 hdfs에 저장하고 이 파일의 word count를 세는 mapreduce application을 실행하여 결과를 확인해본다. hadoop name node를 실행하고 있는 container에 명령을 실행해야한다. local에서 편하게 실행할 수 있도록 alias를 지정한다. hdfs에 test용 디렉토리를 생성하고 cli를 통해 디텍토리를 확인한다. name node의 web ui에서도 디렉토리를 확인할 수 있다. ![](https://velog.velcdn.com/images/cattmerry/post/2700ba27-72b4-4098-83b9-403e121bcb

2022년 9월 28일
·
1개의 댓글
·
post-thumbnail

Hadoop-ecosystem - Docker container로 구축해보기 (2)

프로젝트 github : https://github.com/cattmerry/docker-hadoop Container로 띄울 서비스들과 각 Container를 띄운 이미지, mount한 volume을 시각적으로 정리했다. 전 포스팅에서 build한 이미지를 기반으로 필요한 서비스들을 docker container로 띄운다. volume 공유가 필요할 경우 docker 엔진에서 volume을 생성하고 필요한 container를 mount한다. 모든 container에는 Hadoop이 설치되어있고, Spark는 YARN 위에서 실행하기때문에 Spark를 실제로 실행할 container에만 설치되어있으면 된다. (Hadoop의 datanode에는 설치할 필요 없음) 모든 이미지에는 실행할 스크립트 파일을 추가

2022년 9월 5일
·
1개의 댓글
·
post-thumbnail

Hadoop-ecosystem - Docker container로 구축해보기 (1)

프로젝트 github : https://github.com/cattmerry/docker-hadoop hadoop ecosystem을 docker container로 구축해보는 테스트를 진행해봤다. centos 이미지를 base로 단계별로 dockernize하여 필요한 이미지를 빌드하고 서비스별 컨테이너를 실행하도록 구성했다. 사용한 언어 및 프레임워크 버전은 다음과 같다. > java : 1.8.0 python : 3.7.6 hadoop : 3.2.4 spark : 3.2.2 zeppelin : 0.10.1 Base image build 먼저 각 서비스 실행을 위한 base image를 build한다. 아래의 순서로 이미지를 쌓아간다. 필요한 프로그래밍 언어 설치 필요한 프레임워크 설치 language-base image ![](https://velog.velcdn.com/images/cattmerry/post/8c1092ff-49ca-4

2022년 9월 5일
·
0개의 댓글
·
post-thumbnail

[Week2] 데이터 엔지니어링이란?) 04. Hadoop Ecosystem

💡 (Apache) Hadoop : High-Availability Distributed Object-Oriented Platform의 약자 Apache(아파치) 재단에서 관리하는 프리웨어인 Hadoop Project에서 만들어지는 모든 소프트웨어 솔루션들의 집합을 얘기한다. Hadoop은 HDFS라는 파일처리 시스템과 YARN이라는 리소스 관리 시스템, MapReduce라는 대용량 처리 시스템을 기반으로 하는 프레임워크다. 대용량 데이터를 효과적으로 처리하는 것을 목적으로 하는 많은 소프트웨어들이 함께 있는 플랫폼으로 많은 기업이 활용하고 있다. HDFS (Hadoop Distributed File System) ![](https://velog.ve

2022년 8월 30일
·
0개의 댓글
·