728x90
반응형
Hadoop
- Apache Hadoop (High Availability Distributed Object-Oriented Platform)
- 대량의 자료를 처리할 수 있는 큰 컴퓨터 클러스터에서 동작하는 분산 응용 프로그램을 지원하는 프리웨어 자바 소프트웨어 프레임워크
HDFS(Hadoop Distributed File System)
- Hadoop 프레임워크를 위해 자바 언어로 작성된 분산 확장 파일 시스템.
- 여러 기계에 대용량 파일들을 나눠서 저장. 데이터를 여러 서버에 중복해서 저장함으로써 데이터 안정성을 확보
- 하드웨어 오동작: 하드웨어 오동작이 발생되더라도 빨리 자동으로 복구하는 것이 중요 목표
- 스트리밍 자료 접근: 범용 파일 시스템과 달리 반응 속도보다는 시간당 처리량에 최적화
- 큰 자료 집합: 한 파일이 GB나 TB 정도의 크기를 갖는 것을 목적으로 설계됨
- 간단한 결합 모델: 한번 쓰고 여러 번 읽는 모델에 적합한 구조
- 자료를 옮기는 것보다 계산 작업을 옮기는 것이 비용이 적게 듦
- 다른 종류의 하드웨어와 소프트웨어 플랫폼과의 호환성
1. HDFS는 데이터를 저장하며, 다수의 노드에 복제 데이터도 함께 저장해서 데이터 유실을 방지
2. HDFS에 파일을 저장하거나, 저장된 파일을 조회하려면 스트리밍 방식으로 데이터에 접근해야 함
3. 한번 저장한 데이터는 수정할 수 없고, 읽기만 가능하게 해서 데이터 무결성을 유지(2.0 알파버전부터는 저장된 파일에 append가 가능하게 됨)
4. 데이터 수정은 불가능하지만 파일이동 삭제, 복사할 수 있는 인터페이스를 제공함
분산 코디네이터
Zookeeper
- 분산 환경에서 서버간의 상호 조정이 필요한 다양한 서비스를 제공하는 시스템
- 분산 동기화를 제공하고 그룹 서비스를 제공하는 중앙 집중식 서비스로 알맞은 분산처리 및 분산 환경을 구성하는 서버 설정을 통합적으로 관리
분산 리소스관리
YARN
- 작업 스케줄링 미 클러스터 리소스 관리를 위한 프레임워크
- Mapreduce, 하이브, 임팔라, 스파크 등 다양한 애플리케이션들은 얀에서 작업을 실행
Mesos (클라우드 환경에 대한 리소스 관리)
- Linux 커널과 동일한 원칙을 사용, 컴퓨터에 API(ex. Hadoop, Spark, Kafka, Elasticsearch)를 제공
데이터 저장
Hbase (분산 데이터베이스)
- 구글 Bigtable을 기반으로 개발된 비 관계형 데이터베이스
- Hadoop 및 HDFS위에 Bigtable과 같은 기능을 제공
HDFS (분산 파일데이터 저장)
- 애플리케이션 데이터에 대한 높은 처리량의 액세스를 제공하는 분산 파일 시스템
Kudu (컬럼기반 스토리지)
- Hadoop eco system에 새로 추가되어 급변하는 데이터에 대한 빠른 분석을 위해 설계
데이터 수집
Chukwa
- 분산 환경에서 생성되는 데이터를 안정적으로 HDFS에 저장하는 플랫폼
- 대규오 분산 시스템을 모니터링 하기 위한 시스템
Flume
- 많은 양의 데이터를 수집, 집계 및 이동하기 위한 분산형 서비스
Scribe
- 페이스북에서 개발한 데이터 수집 플랫폼
- Chukwa와 다르게 데이터를 중앙서버로 전송하는 방식, 최종 데이터는 다양한 저장소로 활용할 수 있음
Kafka
- https://epicdevs.com/17
- 데이터 스트림을 실시간으로 관리하기 위한 분산 시스템
- 대용량 이벤트 처리를 위해 개발
- 발행-구독(publish-subscribe) 모델을 기반으로 동작하며 크게 producer, consumer, broker로 구성
데이터 처리
Pig
- Hadoop에 저장된 데이터를 Mapreduce 프로그램을 만들지 않고 SQL과 유사한 스크립트를 이용해 데이터를 처리, 맵리듀스 API를 매우 단순화한 형태로 설계
Mahout
- 분석 기계학습에 필요한 알고리즘을 구축하기 위한 오픈소스 프레이워크
- 클러스터링, 필터링, 마이닝, 회귀분석 등 중요 알고리즘을 지원
Spark
- 대규모 데이터 처리를 위한 빠른 속도로 실행시켜주는 엔진
- 병렬 애플리케이션을 쉽게 만들 수 있는 80개 이상의 고급 연산자를 제공, 파이썬, R 등에서 대화형으로 사용 가능
Impale
- Hadoop 기반 분사 엔진
- Mapreduce를 사용하지 않고 C++로 개발한 인메모리 엔진을 사용해 빠른 성능 가능
Hive
- Hadoop 기반 데이터 솔루션
- 페이스북에서 개발한 오픈소스로 SQL과 유사한 HiveQL이라는 언어를 제공하여 쉽게 데이터 분석을 할 수 있게 함
728x90
반응형
'IT 기초 > Infra' 카테고리의 다른 글
SAN/NAS/DAS (0) | 2021.12.27 |
---|---|
DB availability (0) | 2021.12.27 |
git vs svn (0) | 2021.12.27 |
RDBMS vs NoSQL (0) | 2021.12.27 |
Load Balancing (0) | 2021.12.27 |