빅데이터분석기사 필기 - 빅데이터 플랫폼

더보기

ⅰ빅데이터 분석 기획

 

빅데이터 플랫폼

▷ 빅데이터에서 가치를 추출하기 위해 일련의 과정(수집 > 저장 > 처리 > 분석 > 시각화)을 규격화한 기술

▷ 특화된 분석(의료, 환경, 범죄, 자동차 등)을 지원하는 빅데이터 플랫폼이 발전하는 추세

 

● 빅데이터 플랫폼 구성요소

구성요소 주요 기능
데이터 수집 - 원천 데이터의 정형 / 반정형 / 비정형 데이터 수집
- ETL, 크롤러 EAI 등
데이터 저장 - 정형 데이터, 반정형 데이터, 비정형 데이터 저장
- RDBMS, NoSQL 등
데이터 분석 - 텍스트 분석, 머신러닝, 통계, 데이터 마이닝
- SNS 분석, 예측 분석 등
데이터 활용 - 데이터 가시화 및 BI, Open API 연계
- 히스토그램, 인포그래픽 등

 

● 빅데이터 플랫폼 데이터 형식

형식 특징
HTML - HyperText Markup Language의 약자
- 웹 페이지를 만들 때 사용되는 문서 형식
- 텍스트, 태그, 스크립트로 구성
XML - eXtensible Markup Language의 약자
- 데이터 표현을 위해 태그 사용
- 엘리먼트, 속성, 처리 명령, 엔티티, 주석, CDATE 섹션으로 구성
CSV - Comma Separated Values의 약자
- 몇 가지 필드를 쉼표로 구분한 텍스트 데이터 및 텍스트 파일
JSON - JavaScript Object Notation의 약자
- <키-값>으로 이루어진 데이터 오브젝트를 전달하기 위해 텍스트를 사용하는 개방형 표준 포맷

 


 

● 빅데이터 플랫폼 구축 소프트웨어

소프트웨어 핵심 목적
R 빅데이터 분석 - 통계 프로그래밍 언어인 S 언어를 기반으로 만들어진 오픈 소스 프로그래밍 언어
- 다양한 그래프 패키지들을 통하여 강력한 시각화 기능 제공
우지(Oozie) 워크플로우 관리 - 하둡 작업을 관리하는 워크플로우 및 코디네이터 시스템
- 맵리듀스나 피그와 같은 특화된 액션들로 구성된 워크플로우 제어
플럼(Flume) 데이터 수집 - 이벤트(Event)와 에이전트(Agent)를 활용하여 많은 양의 로그 데이터를 효율적으로 수집, 집계, 이동
HBase 분산 데이터베이스 - 컬럼 기반 저장소로 HDFS와 인터페이스 제공
스쿱(Sqoop) 정형 데이터 수집 - 'SQL to Hadoop'의 약자
- 커넥터를 사용하여 관계형 데이터베이스 시스템(RDBMS)에서 하둡 파일 시스템(HDFS)으로 데이터를 수집하거나, 하둡 파일 시스템에서 관계형 데이터베이스로 데이터를 보내는 기능 수행

 


 

● 분산 컴퓨팅 환경 소프트웨어 구성요소

구분 주요 특징
맵리듀스(Map Reduce) - Key-Value 형태의 데이터 처리
- 맵(Map) > 셔플(Shuffle) > 리듀스(Reduce) 순서대로 데이터 처리
얀(YARN) - 하둡의 맵리듀스 처리 부분을 새롭게 만든 자원 관리 플랫폼
- 리소스 매니저(Master)와 노드 매니저(Slave)로 구성
아파치 스파크(Apache Spark) - 하둡 기반 대규모 데이터 분산처리시스템
- 스트리밍 데이터, 온라인 머신러닝 등 실시간 데이터 처리
- 스칼라, 자바, 파이썬 R 등에 사용 가능
하둡 분산 파일 시스템(HDFS) - Hadoop Distributed File System의 약자
- 대용량 파일을 분산된 서버에 저장하고, 그 저장된 데이터를 빠르게 처리할 수 있게 하는 하둡 분산 파일 시스템
- 네임 노드(Master)와 데이터 노드(Slave)로 구성
아파치 하둡(Apache Hadoop) - 분산 파일 시스템(HDFS)과 맵리듀스를 중심으로 다양한 프로그램으로 구성된 하둡 에코시스템을 가짐
- 클라우드 플랫폼 위에서 클로스터를 구성해 데이터 분석

 

● 하둡 에코 시스템 수집, 저장, 처리 기술

구분 기술 설명
비정형 데이터 수집 척와(Chukwa) - 분산된 각 서버에서 에이전트를 실행하고, 컬렉터(Collector)가 에이전트로부터 데이터를 받아 HDFS에 저장
플럼(Flume) - 많은 양의 로그 데이터를 효율적으로 수집, 집계, 이동하기 위해 이벤트(Event)와 에이전트(Agent)를 활용하는 기술
스크라이브(Scribe) - 다수의 서버로부터 실시간으로 스트리밍되는 로그 데이터를 수집하여 분산 시스템에 데이터를 저장하는 대용량 실시간 로그 수집 기술
- 최종 데이터는 HDFS 외에 다양한 저장소를 활용 가능
정형 데이터 수집 스쿱(Sqoop) - 대용량 데이터 전송 솔루션
히호(Hiho) - 스쿱(Sqoop)과 같은 대용량 데이터 전송 솔루션이며, 현재 깃허브에서 공개되어 있음
- 하둡에서 데이터를 가져오기 위한 SQL을 지정할 수 있으며, JDBC 인터페이스를 지원, 현재는 Oracle, MySQL의 데이터만 전송 지원
분산 데이터 저장 HDFS - 대용량 파일을 분산된 서버에 저장하고, 그 저장된 데이터를 빠르게 처리할 수 있게 하는 하둡 분산 파일 시스템
- 범용 하드웨어 기반, 클러스터에서 실행되고 데이터 접근 패턴을 스트리밍 방식으로 지원
분산 데이터 처리 맵리듀스(Map Reduce) - 대용량 데이터 세트를 분산 병렬 컴퓨팅에서 처리하거나 생성하기 위한 목적으로 만들어진 소프트웨어 프레임워크
- 모든 데이터를 키-값(Key-Value) 쌍으로 구성, 데이터를 분류
분산 데이터베이스 HBase - 컬럼 기반 저장소로 HDFS와 인터페이스 제공
- 실시간 랜덤 조회 및 업데이트를 할 수 있으며, 각각의 프롯스는 개인의 데이터를 비동기적으로 업데이트할 수 있음

 

● 하둡 에코시스템의 데이터 가공 및 분석, 관리를 위한 주요 기술

구분 기술 설명
데이터 가공 피그(Pig) - 대용량 데이터 집합을 분석하기 위한 플랫폼으로 하둡을 이용하여 맵리듀스를 사용하기 위한 높은 수준의 스크립트 언어인 피그 라틴이라는 자체 언어를 제공
- SQL과 유사하기만 할 뿐, 기존 SQL 지식을 활용하는 것이 어려움
하이브(Hive) - 하둡 기반의 DW 솔루션
- SQL과 매우 유사한 HiveQL이라는 쿼리 제공
- HiveQL은 내부적으로 맵리듀스로 변환되어 실행
데이터 마이닝 머하웃(Mahout) - 하둡 기반으로 데이터 마이닝 알고리즘을 구현한 오픈 소스
실시간 SQL 질의 임팔라(Impala) - 하둡 기반의 실시간 SQL 질의 시스템
- 데이터 조회를 위한 인터페이스로 HiveQL을 사용
- 수초 내에 SQL 질의 결과를 확인할 수 있으며, HBase와 연동이 가능
워크플로우 관리 우지(Oozie) - 하둡 작업을 관리하는 워크플로우 및 코디네이터 시스템
- 자바 서블릿 컨테이너에서 실행되는 자바 웹 애플리케이션 서버
- 맵리듀스나 피그와 같은 특화된 액션들로 구성된 워크플로우 제어
분산 코디네이션 주키퍼(Zookeeper) - 분산 환경에서 서버들 간에 상호 조정이 필요한 다양한 서비스 제공
- 하나의 서버에만 서비스가 집중되지 않도록 서비스를 알맞게 분산하여 동시에 처리
TAGS.

Comments