이 글은 2021년 5월 기준 기록입니다.
빅데이터라는 말이 쓰이는 자리는 넓지만, 그 말이 실제로 가리키는 것은 데이터의 크기 하나가 아닙니다. 정의와 목적, 프로젝트의 형태, 그리고 그것을 떠받치는 기술 스택을 차례로 놓고 봐야 윤곽이 잡힙니다.
규모가 성능을 뒤집은 사례에서 출발한다
빅데이터가 무엇인지 설명할 때 자주 등장하는 두 사례가 있습니다. 알파고는 이세돌 9단과의 경기를 위해 4주 동안 딥러닝으로 400만 번의 경기를 반복했습니다. 구글의 무인 자동차는 초당 1GB 규모로 발생하는 센서 데이터를 분석하며 무인 주행에 성공했습니다.
무인 자동차 한 대에 광선 레이더, 비디오카메라, 위치 파악기, 전파 탐지기가 함께 실려 있습니다. 초당 1GB라는 숫자는 이 장치들이 동시에 쏟아 내는 양입니다.
스마트기기와 SNS, 사물 인터넷의 확산으로 시작된 빅데이터는 현대인의 라이프사이클에 직간접적으로 큰 영향을 주면서, 중요한 사회적 현상에 빠지지 않고 등장하고 있습니다. 최근 2년 동안 발생한 데이터가 전 세계 데이터의 80%를 차지한다고 하며, 향후 지구상에서 발생하는 데이터의 양은 2020년까지 35,000엑사바이트 수준까지 증가할 것으로 봅니다.
빅데이터는 여섯 개의 V로 정의된다
빅데이터의 정의는 6V로 정리됩니다.
- 크기(Volume) — 방대한 양의 데이터
- 다양성(Variety) — 정형 데이터와 비정형 데이터가 함께 있음
- 속도(Velocity) — 실시간으로 생성되며, 빠른 속도로 처리하고 분석해야 함
- 진실성(Veracity) — 주요 의사결정을 위해 데이터의 품질과 신뢰성을 확보해야 함
- 시각화(Visualization) — 복잡한 대규모 데이터를 시각적으로 표현함
- 가치(Value) — 비즈니스 효익을 실현하기 위해 궁극적인 가치를 창출함
앞의 세 가지가 데이터 자체의 성질이라면, 뒤의 세 가지는 그 데이터로 무엇을 해야 하는지에 관한 요구입니다.
데이터·기술·사람이 모여야 인사이트가 나온다
빅데이터를 최초로 도입하거나 재구축할 때는 시스템의 구축 목적을 확실히 해야 합니다. 성공적인 구축과 운영을 위해 반드시 갖춰야 할 요소는 데이터, 기술, 사람 세 가지입니다. 이 셋을 통해 인사이트를 발견하고, 비용 절감·수익 창출·문제 해결 같은 목적을 달성합니다.
인사이트는 다시 세 단계로 나뉩니다.
현상 이해는 대규모 데이터로부터 통계량을 추출해 과거에 발생한 일과 그 원인을 파악하는 단계입니다. 시계열별 회원 가입 추이, 고객별 서비스 평균 이용 시간, 서비스 유입 또는 이용 경로, 신규 상품 및 서비스 관심도, 상품 및 서비스의 휴면·해지율 같은 것이 여기에 해당합니다.
현상 발견은 알지 못했던 데이터 패턴을 발견하고 해석해 무슨 일이 새롭게 일어났는지를 알아내는 단계입니다. 고객이 증가하거나 감소한 원인, 매출이 증가하거나 감소한 원인, VOC가 증가하거나 감소한 원인, 회원·상품 가입 중 바운스가 발생한 원인, 부정적 평판 점수가 높아진 원인을 찾습니다.
현상 예측은 앞의 두 단계를 기반으로 예측 모형을 만들고, 현재 발생하고 있는 데이터를 그 모형에 입력해 미래에 발생할 현상을 예측하는 단계입니다. 상품에 가입하거나 이탈할 고객, 부도 위험이 있는 고객, 부정거래 가망 고객, 라이프스테이지별 고객 유형, 상품 구매력이 높은 고객을 가려냅니다.
활용처는 업계가 달라도 세 갈래로 모인다
다양한 업계에서 빅데이터는 공통적으로 세 영역에 활용됩니다. 상품·서비스 영역에서는 개발 및 개선에 활용하고, 마케팅 지원 영역에서는 대규모 고객 및 시장 분석에 활용하며, 리스크 관리 영역에서는 리스크 검출 및 예측 분석에 활용합니다.
최근에는 AI의 중요도와 규모가 커지면서, 초기 빅데이터의 분석 영역에 포함됐던 머신러닝·딥러닝 환경을 독립적인 환경으로 구축합니다. 그 결과 빅데이터 시스템은 AI 시스템에 학습 데이터를 제공하는 역할을 맡게 됐습니다. 또한 AI에 필요한 대용량 데이터를 저장·탐색·가공·전처리해서 AI 데이터 마트를 구성하는 역할도 함께 합니다.
빅데이터는 RDBMS와 달리 일부 데이터에 문제가 생겨도 큰 수의 법칙에 의해 목적을 달성하는 데는 아무 문제가 없으므로, 일부 데이터에 대해 집착할 필요가 없습니다.
프로젝트는 구축·분석·운영 순으로 이어진다
빅데이터 프로젝트는 세 가지 유형으로 나뉩니다.
플랫폼 구축형 프로젝트는 빅데이터 SI 구축형 사업으로, 하드웨어와 소프트웨어를 설치하고 구성하는 일입니다. 수집-적재-처리-탐색-분석 기능을 갖추는 데 보통 3~6개월이 걸립니다. 조직은 크게 세 파트로 나뉘어, 설치와 구성을 맡는 플랫폼 파트, 수집과 적재를 맡는 전처리 파트, 처리·탐색·분석을 맡는 후처리 파트가 함께 움직입니다.
빅데이터 분석 프로젝트는 플랫폼 구축이 끝난 뒤 6~12개월 정도 데이터를 모으면서 데이터에 대한 이해도가 높아지기 시작할 때 진행합니다. 기간은 1~3개월 정도이고, 주제 영역은 마케팅 분석·상품 및 서비스 분석·리스크 분석 세 가지입니다. 이 프로젝트에서는 업무부서와 IT 부서 간의 적절한 조화가 필요하며, 조직은 비즈니스 전문가·데이터 분석가·데이터 엔지니어링 전문가로 구성됩니다.
빅데이터 운영 프로젝트는 완성된 시스템을 중장기적으로 유지 관리하는 일입니다. 다른 운영 시스템과 비교하면 상당한 노력과 운영비용이 발생합니다. 다양한 하드웨어와 수십여 종의 오픈소스 소프트웨어로 구성된 빅데이터 시스템은 매일 다양한 기술적 이슈와 장애를 겪고, 이를 해결하기 위한 하드웨어·소프트웨어 업그레이드와 패치 작업이 매우 빈번합니다. 따라서 전문가 그룹이 반드시 운영조직 내에 있어야만 합니다.
실제로 빅데이터를 잘 활용하는 기업은 SI 및 소프트웨어 전문 기업이 아니라 대규모 서비스를 자체 기술력으로 운영하는 기업입니다. 구글, 페이스북, 트위터, 네이버, 카카오 같은 곳이며, 빅데이터의 수많은 핵심 기술이 이 같은 서비스 기업으로부터 개발되어 발전해 왔습니다.
저렴한 스토리지에서 시작해 제반 기술이 됐다
빅데이터 기술의 위상은 시간에 따라 바뀌었습니다. 초기에는 낮은 비용의 스토리지를 구축하기 위한 솔루션으로 인식됐습니다. 그러다 기존 RDBMS의 기술적 한계로 수행하지 못했던 대규모 작업들을 저비용 고효율로 완수하기 시작하면서, 단순 스토리지 기술이 아닌 이머징 기술로 주목받기 시작했습니다. 이후에는 새로운 이머징 기술들의 제반 기술로 자리 잡았습니다.
빅데이터 기술들은 거대한 오픈소스 소프트웨어 생태계로 만들어져 있지만, 글로벌 기업들의 과감한 투자와 마케팅으로 상업화가 빠르게 진행됐습니다. 클라우데라(Cloudera), 호튼웍스(HortonWorks), 맵알(MapR)이 그 예입니다. 그리고 이 모든 것의 핵심에는 하둡이라는 소프트웨어가 있습니다.
구현 기술은 데이터가 흐르는 순서를 따른다
빅데이터 구현 기술은 데이터가 지나가는 경로를 그대로 따라 네 단계로 나뉩니다. 각 단계마다 파일럿 프로젝트에서 실제로 다루게 될 소프트웨어가 정해져 있습니다.
수집 — 원천을 끌어오는 단계
조직의 내외부에 있는 다양한 시스템으로부터 원천 데이터를 효과적으로 수집하는 기술입니다. 기존 데이터보다 더 크고 다양한 형식의 데이터를 빠르게 처리해야 하므로, 선형 확장이 가능하면서 분산 처리가 가능한 형태로 구성됩니다. 빅데이터 수집기는 원천 시스템의 다양한 인터페이스 유형과 연결되어 정형 또는 비정형 데이터를 대용량으로 수집합니다.
수집은 크게 대용량 파일 수집과 실시간 스트림 수집으로 나눌 수 있습니다. 파일럿 프로젝트에서는 플럼(Flume)을 사용하고, 실시간 스트림 데이터 처리를 위해 스톰(Storm)과 에스퍼(Esper)도 사용합니다.
적재 — 어디에 담을지 고르는 단계
수집한 데이터를 분산 스토리지에 영구 또는 임시로 적재하는 기술입니다. 빅데이터 분산 저장소는 크게 네 가지 유형이 있습니다. 대용량 파일 전체를 영구적으로 저장하는 HDFS(Hadoop Distributed File System), 대규모 메시징 데이터 전체를 영구 저장하는 NoSQL, 대규모 메시징 데이터의 일부만 임시 저장하는 인메모리 캐시, 그리고 대규모 메시징 데이터 전체를 버퍼링 처리하는 Message Oriented Middleware입니다.
수집된 데이터의 성격에 따라 적재 저장소를 달리합니다. 대용량 파일은 주로 HDFS에 적재하고, 실시간으로 대량 발생하는 작은 메시지 데이터는 NoSQL·인메모리 캐시·MoM 등을 선택적으로 사용할 수 있도록 아키텍처링이 필요합니다. 파일럿 프로젝트에서는 분산 파일시스템으로 하둡을, NoSQL 저장소로 HBase를, 분산 캐시 저장소로 레디스(Redis)를, 메시징 저장소로 카프카(Kafka)를 사용합니다.
처리·탐색 — 분석할 수 있는 모양으로 만드는 단계
대용량 저장소에 적재된 데이터를 분석에 활용하기 위해 정형화하고 정규화하는 기술입니다. 탐색적 분석에는 SQL on Hadoop이 주로 사용되며, 대화형 애드혹(Ad-Hoc) 쿼리로 데이터를 탐색·선택·변환·통합·축소하는 작업을 수행합니다.
이 단계에서 내외부의 정형·비정형 데이터를 결합해, 기존에는 기술적 한계로 만들지 못했던 새로운 데이터셋을 생성하는 중요한 작업이 진행됩니다. 정기적으로 발생하는 처리·탐색 과정은 워크플로(workflow)로 프로세스화해 자동화하고, 워크플로 작업이 끝나면 데이터셋들은 특화된 데이터 저장소로 옮겨집니다. 파일럿 프로젝트에서는 휴(Hue), 하이브(Hive), 스파크(Spark) SQL을 사용하고, 후처리 자동화 워크플로에는 우지(Oozie)를 사용합니다.
분석 — 패턴을 찾아 해석하는 단계
대규모 데이터로부터 새로운 패턴을 찾고 그 패턴을 해석해 통찰력을 확보하기 위한 기술입니다. 분산 환경 위에서 머신러닝 기술을 구현해 군집·분류·회귀·추천 같은 고급 분석 영역까지 확장할 수 있습니다. 파일 기반 배치 분석보다 수십 배 빠른 인메모리 기반 분석 기술이 빅데이터 생태계에서 빠르게 발전하고 있습니다. 파일럿 프로젝트에서는 임팔라(Impala), 제플린(Zeppelin), 머하웃(Mahout), R, 텐서플로(TensorFlow) 등을 다루며, 스쿱(Sqoop)을 응용해 외부 RDBMS에 데이터를 제공합니다.
수집에서 분석까지의 이 네 단계가 곧 빅데이터 시스템의 구조입니다. 어떤 소프트웨어를 고르든 자리는 이 네 칸 중 하나입니다.
'IT·테크 > 개발' 카테고리의 다른 글
| REST API와 HTTP 메서드 — 화면 대신 데이터를 주는 웹 서비스 (3) | 2026.08.02 |
|---|---|
| Spring MVC 게시판 만들기 — 프로젝트 구조부터 글 등록과 목록 조회까지 (0) | 2026.08.01 |
| MyBatis 설정과 서블릿 필터 — SQL을 XML로 분리하고 요청을 가로채기 (0) | 2026.08.01 |
| STS 설치와 pom.xml 설정 — Spring MVC Legacy 개발 환경 잡기 (0) | 2026.07.31 |
| Java System.out·System.err를 SLF4J 로거로 리다이렉트하기 (0) | 2026.07.29 |