Architecting Modern Data Platforms 01,02

1장 빅데이터 기술 기초 다지기

하둡 에코시스템 둘러보기

핵심 컴포넌트
연산 프레임워크
분석용 SQL 엔진
스토리지 엔진
데이터 입수
오케스트레이션

빅데이터

  • 규모 Volume
  • 속도 Velocity
  • 다양성 Variety

HDFS

  • 데이터를 블록으로 나눠 저장하며 복제본을 저장한다.
  • 마스터 서버에서 실행되는 네임노드
    • 프로세스가 파일의 어느 복제본에 속하는지 정보와 파일, 블록 사이 매핑정보, 파일 이름, 권한, 속성, 복제 계수 등 파일 자체의 메타데이터를 모두 관리한다.
  • 클러스터의 워커 노드에서 실행되는 데이터노드
    • 데이터 노드를 통해 새 블록을 전달 받아 로컬 디스크에 저장

YARN

  • 클러스터에 걸쳐 가용 자원의 사용 효율성을 높이고 데이터 접근 비용을 낮출 수 있도록 다양한 연산이 동시에 실행될 수 있어야 한다.

  • 중앙에서 클러스터 매니저로 리소스 매니저가 존재
  • 각 노드의 노드매니저 데몬을 통해 서버의 자원 및 상태를 리소스 매니저에 보고

Zookeeper

  • zookeeper가 설치된 서버 클러스터를 앙상블 이라고 하며, 과반수의 서버로 이뤄진 그룹을 쿼럼이라고 한다. 해당 앙상블에는 단 하나의 서버만 리더로 선툴이 되고 나머지는 팔로워로 지정된다.
  • 클라이언트는 어느 서버에 연결되더라도 데이터를 읽고 저장할 수 있지만, 저장할 때는 데이터 일관성 보장을 위해 데이터가 팔로워 서버에서 리더서버로 전달된다.

Hive Metastore

  • 하둡 내 존재하는 비정형 바이너리 데이터가 아닌 정형 데이터셋에 대한 정보를 데이터셋, 테이블, 뷰 같은 논리적인 위계 구조로 구성해서 관리한다.
  • 관리형 테이블(managed table)과 외부 테이블(external table)을 모두 지원한다.
    • 관리형 테이블은 sync가 맞춰지는 느낌
    • 외부 테이블은 별도로 카피된 테이블

Hadoop mapreduce

  • 맵리듀스
    • 하이브
    • 스쿱
    • 우지
    • 피그
  • 효율성, 사용성에 향상된 맵리듀스
    • 스파크
    • 플링크
    • 임팔라