빅데이터를 지탱하는 기술 - 빅데이터의 정착

제 마음대로 요약하고 정리하는 것이라 빠진 내용들이 많습니다. 시간적 여유가 있으시면, 책을 구매하셔서 읽어보시는 것을 권유드립니다.

1. 빅데이터의 정착

"분산 시스템의 발전"과 "클라우드 서비스의 보급"에 따라 대량의 데이터를 효율적으로 처리하는 일이 점차 어렵게 되었다. 이 절에서는 "빅데이터"라는 단어가 퍼질 때까지의 역사를 되돌아본다.

A. 분산 시스템에 의한 데이터 처리의 고속화

빅데이터의 취급하기 어려운 점을 극복한 두 가지 대표 기술

  • 빅데이터의 취급이 어려운 이유
    • "데이터의 분석 방법을 모른다"는 점
    • "데이터 처리에 수고와 시간이 걸린다"는 점

이 책의 목적은 알고 싶은 정보가 이미 있다는 전제하에서 그것을 어떻게 효율적으로 실행할 것인가? 를 생각하는 것이다. 가능한 적은 노력으로 원하는 정보를 얻을 수 있도록 지금 어떠한 기술이 사용되는지 살펴보자.

a. 빅데이터 기술의 요구

Hadoop과 NoSQL의 대두

빅데이터의 기술로 가장 먼저 예로 들 수 있는 것이 'Hadoop'과 'NoSQL'이다.

전통적인 관계형 데이터베이스(RDB)로는 취급할 수 없을 만큼 대량의 데이터가 점차 쌓이게 되었다. 그렇게 축적된 데이터를 처리하려면 기존과는 다른 구조가 필요했다. Hadoop과 NoSQL은 각각 다른 요구를 충족하기 위해 태어났다.

b. Hadoop

다수의 컴퓨터에서 대량의 데이터 처리

Hadoop은 다수의 컴퓨터에서 대량의 데이터를 처리하기 위한 시스템이다.

Hadoop은 구글에서 개발된 분산 처리 프레임워크인 MapReduce를 참고하여 제작되었다. 초기 Hadoop에서 MapReduce를 동작시키려면 데이터 처리의 내용을 기술하기 위해 자바 언어로 프로그래밍을 해야 했다. 그렇기에 누구나 간단히 사용하지 못했다.

그래서 SQL과 같은 쿼리 언어를 Hadoop에서 실행하기 위한 소프트웨어로 Hive가 개발되어 2009년에 출시되었다. Hive를 통해 프로그래밍 없이 데이터를 집계할 수 있게 함으로써 많은 사람이 Hadoop을 이용한 분산 시스템의 혜택을 받을 수 있게 되었다.

c. NoSQL 데이터베이스

빈번한 읽기/쓰기 및 분산 처리가 강점

NoSQL은 전통적인 RDB의 제약을 제거하는 것을 목표로 한 데이터베이스의 총칭이다. NoSQL 데이터베이스에는 다양한 종류가 있다.

  • 키 밸류 스토어 (key-value store/KVS)
    • 다수의 키와 값을 관련지어 저장
  • 도큐멘트 스토어 (document store)
    • JSON과 같은 복잡한 데이터 구조를 저장
  • 와이드 칼럼 스토어 (wide-column store)
    • 여러 키를 사용하여 높은 확장성을 제공

NoSQL 데이터베이스 제품은 각자가 추구하는 목표가 다르므로 단순 비교를 할 수는 없지만, RDB보다 고속의 읽기, 쓰기가 가능하고 분산 처리에 뛰어나다.

d. Hadoop과 NoSQL 데이터베이스의 조합

현실적인 비용으로 대규모 데이터 처리 실현

이 둘을 조합함으로써 NoSQL 데이터베이스에 기록하고 Hadoop으로 분산 처리하기라는 흐름이 2011년 말까지 정착하게 되었고, 2012년부터는 일반에 널리 퍼지기 시작했다.

방대한 규모로 계속 증가하는 데이터에 대해, 기존의 기술로는 불가능하거나 고가의 하드웨어가 필요한 경우에도 현실적인 비용으로 데이터를 처리할 수 있게 된 것이 당시의 기술적인 배경이다.

B. 분산 시스템의 비즈니스 이용 개척

데이터 웨어하우스와의 공존

데이터 웨어하우스에서도 대량의 데이터를 처리할 수 있으며, 오히려 여러 방면에서 Hadoop보다도 우수하다. 하지만 일부 데이터 웨어하우스 제품은 안정적인 성능을 실현하기 위해 하드웨어와 소프트웨어가 통합된 통합 장비(appliance)로 제공되었다. 데이터 용량을 늘리려면 하드웨어를 교체해야 하는 등 나중에 확장하기가 쉽지 않았다.

따라서, 가속도적으로 늘어나는 데이터의 처리는 Hadoop에 맡기고, 비교적 작은 데이터, 또는 중요한 데이터만을 데이터 웨어하우스에 넣는 식으로 사용을 구분하게 되었다.

C. 직접 할 수 있는 데이터 분석 폭 확대

클라우드 서비스와 데이터 디스커버리로 가속하는 빅데이터의 활용

비슷한 시기부터 클라우드 서비스의 보급에 의해 빅데이터의 활용이 증가하였다. 여러 컴퓨터에 분산 처리한다라는 점이 빅데이터의 특징이다. 하지만 이를 위한 하드웨어를 준비하고 관리하는 일은 간단하지 않다. 클라우드 시대인 요즘은 시간 단위로 필요한 자원을 확보할 수 있어서 방법만 알면 언제든지 이용할 수 있는 환경이 마련되었다.

a. 데이터 디스커버리의 기초지식

셀프서비스용 BI 도구

데이터 디스커버리란 "대화형으로 데이터를 시각화하여 가치 있는 정보를 찾으려고 하는 프로세스"를 말한다.

데이터 디스커버리는 "셀프서비스용 BI 도구"로 불린다. BI 도구(business intelligence tool) 는 예전부터 데이터 웨어하우스와 조합되어 사용된 경영자용 시각화 시스템으로 대기업의 IT부서에 의해 도입되는 대규모의 도구다. 셀프서비스용 BI 도구는 이것을 개인도 도입할 수 있을 정도로 단순화한 것으로, 이로 이해 점차 많은 사람이 데이터를 살펴볼 수 있게 되었다.

참고문헌

[1] 니시다 케이스케, 장성두 옮김, "빅데이터를 지탱하는 기술", 3쇄, 제이펍, 2021년

이 글이 도움이 되었나요?

신고하기
0분 전
작성된 댓글이 없습니다. 첫 댓글을 달아보세요!
    댓글을 작성하려면 로그인이 필요합니다.