본문 바로가기
Big Data/Spark

(Apache Spark) 인메모리 방식이란?

by 스퀴시 2020. 11. 9.
728x90
SMALL

서론

  • 하드웨어 관점에서, 데이터 분석 시스템은 다음과 같은 세 가지 구성요소로 이루어짐

    1. 연산을 수행하는 프로세서
    2. 처리의 대상이 되는 데이터를 저장할 저장장치
    3. 둘 사이에 데이터를 전송하는 전송 시스템
  • 전체 데이터 분석 시스템의 성능을 저하하는 **병목(bottleneck)**은 가장 느린 구성요소

    • 병목은 저장장치
    • 하드디스크 시스템이 전체 시스템의 성능을 저하하는 병목
  • 병목현상을 극복하고자 오랫동안 사용된 방법

    • 캐시 — 메모리 — 하드디스크로 구성된 메모리 계층 구조
    • 하지만, 무어의 법칙에 따라 CPU의 성능이 급격하게 발전하여 CPU와 하드디스크의 속도 차이가 점점 증가, 인공지능이나 빅데이터, 사물인터넷 같은 새로운 기술의 발전에 따라 IT 시스템이 처리해야 할 데이터 양이 기존의 캐시 시스템으로 지원하기에는 너무 급속하게 증가함
    • 다른 해결책이 필요해짐 → 인메모리 컴퓨팅 제안

인메모리 컴퓨팅의 개념

  • 간단한 정의

    • 기존의 디스크 기반 컴퓨팅과 달리 데이터를 하드디스크에 저장하고 관리하는 것이 아니라, 전체 데이터를 메모리에 적재하여 사용
  • 기술적인 정의

    • 컴퓨팅 시스템의 공식 기록 시스템(system of record)으로 H/D를 사용하는 것이 아니라 메모리를 사용하는 것
    • 데이터를 메모리에 보관/ 처리하고 하드디스크를 데이터의 안전한(stash) 보관하기 위해 사용하는 구조
    기존 디스크 기반 컴퓨팅 - 데이터를 하드디스크에 보관/처리하고, 빈번하게 사용되는 일부 데이터를 메모리에 캐싱하는 구조
LIST

'Big Data > Spark' 카테고리의 다른 글

(Apache Spark) 개요  (0) 2020.11.09