728x90

73강. Oozie 설명

최근 데이터 배치 작업 관련하여 스케줄링 등 orchestration tool은 airflow를 많이 사용하는 추세라  oozie는 거의 사용하지 않는 추세인듯 하다...

하둡 클러스터의 주기적인 작업을 관리하는 역할

하둡에서 실행되는 다양한 액션을 정리하고 한 데 묶어서 워크플로로 만들고 이 워크플로가 주기적으로 실행되도록 스케줄 한다.

 

Workflows

oozie의 첫번째 중요한 개념은 워크플로이다.

한 개 이상의 서로 의존하는 작업들을 묶은 것이 워크플로라고 할 수 있다. 

그리고 각 작업들이 서로 다른 엔진에 의해 작동되는 것이어도 같은 워크플로로 묶을 수 있다.

 

이렇게 다양한 작업 간에 필요한 종속성 구조를 설정할 수 있다. 

 

DAG(방향성 비순환 그래프)방식을 구축하여 서로간의 종속성을 알 수 있으며 이를 XML파일을 통해 지정할 수 있다.

 

 

모든 워크플로는 시작노드와 끝노드가 있어야 한다. 

포크노드는 두 개 이상의 액션을 병렬로 처리할 때 사용한다. 

연결노드(join)에서 각자 완료된 작업이 만나게 되고 hive를 통해 테이블이 만들어진다.

 

 

Oozie사용의 단점

  • 에디터가 XML뿐이다.
  • 개별 액션이 잘 작동해야 해서 사전에 개발하고 테스트 해야한다.
  • oozie에서는 디버깅이 쉽지 않다. 
  • 사용하기에 편한 UI를 제공하지 않는다.(clodera를 활용하면 이용할 수 있다)

 

Coordinators

워크플로를 통해 하둡의 여러 작업을 한데 묶으며, 실제로 이 워크플로를 주기적으로 실행하는 스케줄 업무를 진행한다. 

코디네이터에서 시작시간과 실행주기를 알려준다. 

필요한 입력 데이터가 가능할 때까지 기다릴 수 있다. 

 

Oozie bundles

oozie 3.0에 새로 도입. 

다양한 워크플로와 코디네이터가 같은 소스 데이터를 처리하거나 같은 개념의 작업을 할 수도 있다. 이러한 경우 다양한 코디네이터를 번들로 그룹지으면 유용하다. 

운영적 관점에서 수많은 작업을 간소화할 수 있다. 

 

 

74강. [활동] 간단한 Oozie  워크플로 설정하기

 

75강.  Zeppelin 개요

다른 기술들처럼 인프라는 아니다. 

보통 spark 스크립트를 실행하고 빅데이터를 시각화해서 분석하는데 사용되지만 하둡 클러스터를 위한 플러그인도 보유한다. 

 

zeppelin은 빅데이터의 노트북 인터페이스이다. 

빅데이터를 다양한 방법으로 쉽게 분석하고 그 결과를 시각화하는 것이다. 

 

작업하고 있는 코드에 대한 가독성도 좋아지고 작업한 노트북을 클러스터의 다른 사람들과 공유할 수 있어서 협업하기에 편리하다. 

 

 

76강,77강 [활동] Zeppelin을 사용하여 영화 평점 분석하기

 

78강.  Hue 개요

hortonworks 배포버전을 사용한다면 사용할 수 없지만 cloudera에서는 사용할 수 있다.

hadoop user experience의 약자이다.

 

hue자체가 cloudera에서 개발했고 기술적으로는 오픈소스 이지만 cloudera를 위해 개발되었다.

데이터에 쿼리를 하고 노트북 상호작용 및 HDFS파일 시스템을 탐색하는 사용자 인터페이스, hue가 있다. 

 

hue에는 oozie에디터가 내장되어 있다. 

따라서 다소 복잡햇던 oozie작업을 hue를 사용하면 간단해진다. 워크플로,코디네이터,번들을 만들 수 있는 그래픽 에디터가 있다. 

 

 

79강. 언급할 가치가 있는 기술

Gangila

UC버클리에서 개발한 하둡 모니터링 시스템

최근에는 grafana,  ambari 등이 대신한다.

 

 

Chukwa

넷플릭스가 채택한 시스템

최근엔 flume, kafka 많이 활용

이 기술은 하둡 클러스터 뿐 아니라 범용으로 사용할 수 있도록 구축된 현대 시스템

해당 기술은 로그를 전달하는데 수분의 지연이 있다는 단점이 있다.

 

728x90

+ Recent posts