목록빅데이터/BIGDATA Platform (14)
Practice makes perfect
제플린(Zeppelin) 란? : 제플린은 Apache Spark을 기반으로 한 시각화 툴이며, UI에서 코딩도 할 수 있고 SQL도 날리면서 데이터를 시각화해서 보여주는 빅데이터 분석 및 시각화 툴입니다. 제플린(Zeppelin) 홈페이지 : zeppelin.apache.org/ 제플린(Zeppelin)의 등장 배경 : 대용량 데이터를 효과적으로 탐색 및 분석하기 위해서는 대용량 데이터셋을빠르게 파악하고 이해하기 위한 분석 및 시각화 툴 필요했습니다. 그래서 하둡의 저장소에 있는 데이터를 참조하여 데이터 분석이 가능하도록 스파크를 기반으로 하는 제플린이 탄생하였습니다. - 국내 스타트업 기업인 NFLaps에서 2013년부터 주도하고 있는 오픈소스 프로젝트로, 2014년 12월 아파치 재단에 인큐베이팅됐..
임팔라(Impala)란? 아파치 임팔라(Apache Impala)는 아파치 하둡을 실행하는 컴퓨터 클러스터에 저장된 데이터를 위한 오픈 소스 대규모 병렬 처리(MPP) SQL 쿼리 엔진입니다. 빅데이터 분석을 인메모리 기반의 실시간 온라인 분석까지 확대를 가능하게 하며, 구글 드레멜 논문 2010년에 발표를 시작으로 2012년 10월 실시간 빅데이터 분석 질의가 가능한 임팔라를 클라우데라가 오픈소스로 발표하였습니다. 임팔라(Impala) 홈페이지 : impala.apache.org/ 임팔라(Impala)의 기능(실시간 - real time) - H베이스(HBase)나 맵-리듀스 같은 별도 계층을 거치지 않고 HDFS(Hadoop Distributed File System)와 직접 통신을 합니다. 그리고 ..
Hue 란? : Hue(Hadoop User Experience)는 Apache Hadoop 클러스터와 함께 사용되는 웹 기반 사용자 인터페이스입니다. Hue는 다른 Hadoop 에코시스템과 함께 그룹화되어 Hive 작업 및 Spark Job 등을 실행할 수 있습니다. Hue는 다양한 하둡의 에코시스템의 기능들을 웹 UI로 통합 제공되었으며, 오픈 소스로 깃허브에 공개, 2016년 공식 사이트에서 릴리즈하였습니다. Hue 공식 사이트 : gethue.com/ Hue 등장 배경 : 빅데이터 탐색/분석은 반복적인 작업이면서 그 과정에서 많은 도구들이 활용되고, 하둡 기반의 하아브, 피그, 우지, 스쿱 등 알아야 할 기술 요소가 지나치게 많아 업무 담당자 또는 데이터 분석가들이 직접 사용하기에 어려움울 많이 ..
우지(Oozie) 란? : 하둡의 잡(job)을 관리하기 위한 서버 기반의 워크플로 스케줄링 시스템입니다. 자바 기반의 웹 애플리케이션으로서 Java servlet-container에서 수행되는 서버 기반의 워크플로 엔진으로 정의할 수 있습니다. 우지(Oozie)의 등장 배경 : 반복적이면서 복잡한 후처리 job을 처리하기 위해 방향성 있는 비순환 그래프(DAG:Direct Acyclic Graph)로 정의해서 job에 시작, 처리, 분기, 종료점 등의 액션(Action)으로 구성하는 워크플로(workflow)가 필요했습니다. 또한 수집 및 적재된 수백 개 이상의 데이터셋을 대상으로 다양한 후처리 job이 데이터 간의 의존성과 무결성을 유지하며 복잡하게 실행되었습니다. 이러한 필요성에 의해서 우지가 만들..
스파크(Spark)란? : 빅데이터 워크로드에 주로 사용되는 분산처리 기능을 제공하는 하둡과 마찬가지로 오픈소스입니다. 특징은 빠른 성능을 위해 인 메모리 캐싱과 최적화된 실행을 사용하고 일반 배치 처리, 스트리밍 분석, 머신러닝, 그래프 데이터 베이스 및 임시 쿼리를 지원합니다. 아파치 스파크 홈페이지 : spark.apache.org/ 맵리듀스 코오를 그대로 사용하는 하이브는 성능면에서 만족스럽지 못했으며, 그로 인해 반복적인 대화형 연산 작업에서는 하이브가 적합하지 못합니다. 이러한 단점을 극복한 고성능 인메모리 위에서 분석함으로써 대용량 데이터 작업에도 빠른 성능을 보장합니다. 하둡과 하이브를 비롯한 기존의 여러 솔루션과의 연동(스칼라, 자바, 파이썬, R)을 지원하고 마이크로 배치 방식의 실시간..
하이브(Hive)란? : MapReduce는 복잡도가 높은 프로그래밍 기법이 필요했고, 이는 업무 분석가 및 관리자들에게 빅데이터에 접근하는 것을 어렵게 만들었습니다. 이를 해결하기 위해 페이스북에서 SQL과 매우 유사한 방식으로 하둡 데이터에 접근성을 높인 Hive 개발을 하게 되었습니다. 하둡에서 정형화된 데이터를 처리하기 위한 데이터 웨어하우스 인프라 입니다. 하이브 홈페이지 : hive.apache.org/ 초기에는 페이스북에서 개발되었지만 넷플릭스등과 같은 회사에서 사용되고 있으며 개발되고 있으며, 오픈 소스로 공개되면서 2016년 2월 하이브 2.0이 릴리스되었습니다. (빅데이터의 가장 대표적인 SQL on Hadoop 제품으로 자리 잡음) 하이브(Hive) 수행 기능 1) 아파치 하이브는 아..
레디스(Redis)란? : (Redis)Remote Dictionary Server의 약자로서, "키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터베이스 관리 시스템(DBMS)입니다. IMDG(In-Memory Data Grid) 소프트웨어(메모리기반으로 되어 있는 소프트웨어) – 분산 캐시 시스템이면서 NoSQL 데이터베이스처럼 대규모 데이터 관리 능력도 갖추고 있습니다. 실질적인 메모리 용량에 있어서는 한계를 가지고 있습니다.(소규모성의 빠른 필터링을 통해 영구 보관할 필요 없을 때 사용하는 데이터 셋) NOSQL: Not Only SQL, 비관계형 데이터베이스 그렇다면 왜, 언제 NOSQL을 쓰는 걸까요? 아주 많은 양의 데이터를 효율적으로 처리가 필요할 때,..
HBase란? : 아파치 HBase(Apache HBase)는 하둡 플랫폼을 위한 공개 비관계형 분산 데이터 베이스이다. 구글의 빅테이(BigTable)을 본보기로 삼았으며 자바로 쓰여졌습니다. 아파치 소프트웨어 재단의 아파치 하둡 프로젝트 일부로서 개발되었으며 하둡의 분산 파일 시스템인 HDFS위에서 동작을 합니다. HBase 홈페이지 : hbase.apache.org/ HBase의 특징 1) 하둡의 HDFS를 저장소로 사용하는 컬럼 기반 지향의 NoSQL 데이터베이스입니다. - NoSQL DB는 데이터를 키/값(key/value) 형식으로 단순하게 구조화하는 대신 고성능의 쓰기/읽기가 가능하도록 만든 데이터베이스 (핵심포인트) – 실시간성의 처리 최적화 - HBase의 경우 특히 쓰기 성능에 좀 더 ..