9월, 2017의 게시물 표시

Apache Superset(incubating) 정리

이미지
1. 소개 AirBnB에서 오픈소스(Apache2.0 라이센스)로 공개했다. Enterprise BI를 포지셔닝하고 있으며, 현재 Apache Incubating 프로젝트이다. Web Application 형태로 사용 가능, 여담으로 공개되기 전 원래 프로젝트 이름은 Caravel과 Panoramix로 불렸다. Hortonworks Data Platform 2.6 버전에 비 공식적으로 패키징 되어있다(rpm을 통해 설치 가능) 2. 특징  데이터 탐색 및 시각화를 위한 BI 툴.  대시보드 생성 및 공유 기능  엔터프라이즈 환경 사용을 위한 보안(OpenID, LDAP, OAuth, REMOTE_USER 등)  데이터 엑세스에 대한 세밀한 보안/권한 관리  여러가지 DBMS 지원(MySQL,Postgres,Presto,Oracle,sqlite,Redshift,MSSQL,Impala,SparkSQL,Greenplum,Athena,Vertica + SQLAlchemy) 3. 설치 설치 과정은 OS/Python 버전 등에 따라 다르므로 아래의 문서를 참조. https://superset.incubator.apache.org/installation.html 다음은 CentOS 6, Python3.x 환경에서 설치 과정이다. sudo yum upgrade python-setuptools sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel virtualenv venv . ./venv/bin/activate pip install --upgrade setuptools pip # superset 설치 pip install superset # Admin 유저 생성(명령 수행 후 prompt에서 비밀번호 설정) fabmanager cre

Stream Analytics Manager in Hortonworks Data Flow - 2

이미지
Stream Analytics Manager의 component들에 대한 정리 Component는 Source(Input) -> Processor(Processing) -> Sink(Output) 순으로 처리가 이루어 진다.    1. Source Component  - 현재 Event Hubs, HDFS, Kafka 3개의 기능만 제공하고 있다.  1) Event Hubs : MS Azure에서 제공하는 이벤트를 수집, 변환, 저장하는 하이퍼 스케일 원격 분석 수집 서비스 2) HDFS : HDFS URL을 통하여 HDFS 디렉토리에 있는 파일을 Import 함  3) Kafka : 분산 메세징 큐 서비스인 Kafka를 Source로 이용, Kafka Topic을 만든 뒤 해당 정보를 Schema Registry에 해당 Topic 정보를 입력하고 사용. 2. Processor Component  - Aggregate, Branch, Join, Projection, Rule, PMML(Predictive Model Markup Language) 6개의 기능 제공.  1) Join : 2개의 Source에서 들어오는 데이터를 Join한다. Interval을 시간 or Count로 조정하여 수행, Output 컬럼을 지정할 수 있다.  2) Aggregate : AVG, COUNT, SUM, MAX, MIN등 의 aggregate function을 사용하여 들어오는 데이터를 조작, 역시 Output 컬럼을 지정할 수 있다.  3) Rule : 어떠한 Rule을 지정하여 데이터를 filtering 한다. EQUALS, NOT_EQUAL, GREATER_THAN, LESS_THAN 등. 비교연산자를 생각하면 될 것 같다.  4) Projection : IDENTITY, UPPER, LOWER, INITCAP, SUBSTRING, CONCAT, CHAR_LENGTH 함수를 제공

Apache Ambari Overview

Apache Ambari에 대한 사내 세미나 자료 Apaceh Ambari Overview from JEONGPHIL HAN

자주 쓰이는 Ambari REST API 정리

자주 쓰이는 Ambari Rest API에 대해 정리. Cloudera Manager도 비슷한 구조로 REST API를 사용할 수 있는데 사용해 보지 않아 정확히 모름. 관련 Apache WIKI https://cwiki.apache.org/confluence/display/AMBARI/Using+APIs+to+delete+a+service+or+all+host+components+on+a+host Service 상태 점검  # curl -u admin:admin -X GET http://[SERVER_HOSTNAME]:8080/api/v1/clusters/ [CLUSTER_NAME] /services/[SERVICE_NAME]  # curl -u admin:admin -X GET http://192.168.11.148:8080/api/v1/clusters/prum/services/HAWQ Service 중지 # curl -u admin:admin -H "X-Requested-By: ambari" -X PUT -d '{"RequestInfo":{"context":"Stop Service via REST "},"Body":{"ServiceInfo":{"state":"INSTALLED"}}}' http:// [SERVER_HOSTNAME] :8080/api/v1/clusters/[CLUSTER_NAME]/services/ [SERVICE_NAME] curl -u admin:admin -H "X-Requested-By: ambari" -X PUT -d '{"RequestInfo":{"context":"Stop Service via REST "},&q

YARN & MRv2 리소스 설정

이전에 바이너리 설치 시 정리해 놓았던 자료. 현재는 Ambari or CDM를 통하여 설치하면 알아서 설정해주니 별 필요는 없을 것 같다. 각 파일 별 설정 값 설명 1. yarn-env.sh   YARN_NODEMANAGER_HEAPSIZE : 노드 매니저의 JAVA HEAP SIZE * YARN_NODEMANAGER_HEAPSIZE가 yarn.nodemanager.resource.memory-mb 값보다 커야된다고 하는 자료가 많은데 이 둘은 관계가 없다. HEAP_SIZE는 Nodemanager의 프로세스가 사용하는 메모리이고 yarn.nodemanager.resource.memory-mb 값은 컨테이너에 할당할 수 있는 최대 메모리임. Nodemanager와 컨테이너는 각기 다른 프로세스이므로 두 파라미터 간의 상관관계는 없음. 2. yarn-site.xml   yarn.nodemanager.resource.memory-mb : 노드 매니저가 컨테이너 할당에 사용할 수 있는 메모리 사이즈   yarn.scheduler.minimum-allocation-vcores : 컨테이너에 할당 할 수 있는 최소 Vcore 개수   yarn-scheduler.maximum-allocation-vcore : 컨테이너에 할당 할 수 있는 최대 Vcore 개수   yarn.scheduler.minimum-allocation-mb : 컨테이너에 할당 할 수 있는 최소 memory 용량   yarn.scheduler.maximum-allocation-mb : 컨테이너에 할당 할 수 있는 최대 memory 용량   yarn.scheduler.increment-allocation-vcores : 컨테이너에 추가 할당 할 수 있는 Vcore 수   yarn.scheduler.increment-allocation-mb : 컨테이너에 추가 할당 할 수 memory 용량 3. mapred-site.xml   yarn.app.mapreduce.

HDFS 개요

HDFS에 대한 사내 세미나 자료 HDFS 교육자료 from JEONGPHIL HAN

Stream Analytics Manager in Hortonworks Data Flow

이미지
개요 코드 작성없는 간단한 스트리밍 앱 구성을 위한 서비스 HDF(Hortonworks Data Flow)3.0 부터 지원 장점 Apache Ambari와의 연계 Ambari의 Web 주소 계정 정보를 입력하는 것만으로 클러스터 내의 서비스 정보를 import 가능 여러 개의 클러스터 import 가능 (수집용 클러스터, 분석용 클러스터를 따로 구성한 경우 Schema Registy를 통한 HDF 서비스 간 스키마 저장/편집/공유 Schema Registry에 등록하면 HDF의 NiFi나 SAM 등의 서비스에서 사용가능 Schema 정보의 손쉬운 버전 관리 SAM Application은 Component를 flow로 연결하여 구성한다. Component는 Source, Processor, Sink로 구분된다. Source 데이터 input 스트림 생성에 사용 현재 Kafka, HDFS, Azue Event Hub 등을 지원한다 Processor 스트림에 대한 이벤트를 처리하는데 사용 Join, Aggregate, Projection, Bench, Rule, PMML 등의 기능을 제공한다 Sink 데이터 output, 다른 서비스로 이벤트를 전송 HDFS, HBase, Hive, JDBC, Cassandra, Solr, Kafka, Druid, E-mail 등을 지원한다 다음 그림은 SAM Application을 Edit하는 화면이다. 아래의 Hortonworks Doc 링크에서 SAM을 사용하는 간단한 예제를 수행할 수 있다. 트럭의 속도와 위치를 수집하여 실시간으로 처리하도록 되어 있다. https://docs.hortonworks.com/HDPDocuments/HDF3/HDF-3.0.1.1/bk_getting-started-with-stream-analytics/content/ch_sam-buildin