신지덤

  1. 신기술
    1. 신기술

스파크

개념
- 하둡의 맵리듀스 작업에서 성능의 병목현상의 원인인 디스크 I/O 비용을 효율화하고 데이터 분석작업을 실시간으로 처리하기 위하여 인메모리 컴퓨팅 기반의 데이터 분산처리 시스템

I. 정의

     하둡의 맵리듀스 작업에서 성능의 병목현상의 원인인 디스크 I/O 비용을 효율화하고 데이터 분석작업을 실시간으로 처리하기 위하여 인메모리 컴퓨팅 기반의 데이터 분산처리 시스템


II. 특징  

    1) 인메모리 기반의 반복적 데이터 처리, 
    2) 대화형 데이터 마이닝 툴 제공                                                                                                                                                                                       3) 5초이하의 짧은 배치작업
    4) 사용언어: 스칼라(Scala), 자바, 파이선 API 지원


III. 구조
    - 워커(Worker) : 다중 서버에서 메모리 자원관리, RDD(읽기전용데이터) 연산수행
    - 드라이버 프로그램 : 사용자의 작업 수행


IV. 활용

     그래프처리, SQL엑세스, 배치프로세싱 >> 대량의 데이터에 대하여 반복적인 작업이 많을때 효율적(기계학습 적용 유리하며, 하둡의 10배)


V. 기술요소
    - RDD(Resilient Distributed DB) : 데이터집합 추상화 객체(>대용량 처리 용이), 스파크 데이터 처리단위, 읽기전용 이뮤터블 데이터 구조, DAG로 표현
    - RDD연산자 :  RDD 병렬 데이터 처리연산 지원 , (기본연산자) join, union, sort, filter (맵리듀스) map, flatmap
    - 인터프리터  결합: 스칼라 기술(객체지향과 함수형 요소 결함언어) , 자바 JVM 으로 컬파일 되어 클래스로 변환
    - 작업스케쥴링: 대부분의 연산은 서버의 인메모리 동작 관리 / Memos 또는 YARN 에서 관리


VI. MapRecude대비 개선된사항

     1) Disk I/O 효율 개선 2) 반복작업처리 성능 우수(기계학습 적용) 3) 다양한 연산처리(map,flatMap, join, union, filter등)


VII. 스파크 프레임워크

댓글