NakedFlower 님의 블로그

빅데이터 개론 본문

Data Engineering

빅데이터 개론

nakedflower 2025. 10. 31. 16:38

빅데이터란?

정의

  • 빅데이터란 기존의 데이터 처리 및 분석 도구로는 수집·저장·관리·처리하기 어려울 정도로 규모가 크거나 복잡한, 다양한 형태의 데이터 집합을 의미한다.
  • 정형 데이터뿐만 아니라 반정형(XML, JSON 등) 또는 비정형(텍스트, 이미지, 영상) 데이터를 모두 포함하며, 이들이 대량으로 지속해서 생성되는 환경을 의미한다.

특징 (5V)

  • Volume (양): 생성·저장되는 데이터의 양이 방대함 (테라바이트, 페타바이트 이상).
  • Velocity (속도): 데이터 생성 및 처리 요구 속도가 매우 빠르며 실시간 또는 근실시간 분석이 필요함.
  • Variety (다양성): 여러 원천·형식(정형·반정형·비정형)의 데이터가 혼재됨.
  • Veracity (진실성/신뢰성): 데이터의 정확성, 신뢰성, 품질이 중요해짐.
  • Value (가치): 단순히 데이터가 많은 것이 아니라, 의미 있는 가치, 인사이트를 뽑아내는 것이 핵심임.

왜 중요한가?

  • 기업이나 조직은 빅데이터를 통해 고객 행동, 시장 동향, 운영 효율성 등을 더 잘 이해할 수 있으며, 이를 바탕으로 의사결정의 질을 높일 수 있다.
  • 또한 인공지능(AI), 머신러닝, 사물인터넷(IoT) 등이 확산되면서 생성되는 데이터의 양과 다양성이 폭발적으로 증가했고, 이를 제대로 분석·활용하지 않으면 경쟁에서 뒤처질 수 있다.

 

빅데이터 소스 생성과 수집 기술

  • 내부 데이터 수집: 자체적으로 보유한 내부 파일 시스템, 데이터베이스 관리 시스템, 센서 등에서 정형 데이터를 수집.
  • 외부 데이터 수집: 인터넷으로 연결된 외부에서 비정형 데이터를 수집.

빅데이터 저장 기술

  • 빅데이터는 '대용량, 비정형, 실시간성' 속성을 수용할 수 있는 저장 방식이 필요함.
  • 대표적인 기술로는 분산 파일 시스템, NoSQL, 병렬 DBMS, 네트워크 구성 저장 시스템 등이 있음.

빅데이터 처리 기술

  • 빅데이터 일괄 처리 기술: 빅데이터를 여러 서버로 분산하여 나누어 처리하고, 이를 다시 모아 결과를 정리하는 분산·병렬 기술.
  • 빅데이터 실시간 처리 기술: 스트림 데이터를 실시간으로 처리할 수 있도록 강화된 스트리밍 컴퓨팅을 지원. (예: Storm, Flink)
  • 빅데이터 처리 프로그래밍 지원 기술: 분산 데이터를 처리하는 프로그래밍 언어(예: Sawzall), 병렬 처리를 하는 고성능 데이터-플로우 언어 및 실행 프레임워크(예: Hadoop Pig).

Hadoop (하둡)

  • 정형·비정형 빅데이터 처리에 가장 선호되는 솔루션.
  • **HDFS (Hadoop Distributed File System)**라는 분산 파일 시스템으로 구성.
  • 수평적 확장을 통한 시스템 가용성 극대화가 가능하며, 이기종 하드웨어 및 소프트웨어 플랫폼 간의 이식성이 뛰어남.
  • 주요 구성 요소로는 HDFS, 분산 결함 감내 데이터베이스인 HBase, 분산 컴퓨팅 지원 프레임워크인 MapReduce를 포함.

MongoDB (몽고디비)

  • JSON Type의 데이터 저장 구조를 제공.
  • Sharding(분산)Replica(복제) 기능을 제공.
  • MapReduce(분산/병렬처리) 기능을 제공.
  • Memory Mapping 기술을 기반으로 Big Data 처리에 탁월한 성능을 제공.

MapReduce (맵리듀스)

  • 구글에서 분산 컴퓨팅을 지원하기 위한 목적으로 2004년 발표한 소프트웨어 프레임워크.
  • MAP 함수를 통해 Input 데이터를 여러 개의 작은 Split-Peace로 분산 입력.
  • REDUCE 함수를 통해 중복 데이터를 제거한 후 사용자가 원하는 형태로 데이터를 집계.
  • 구글 MapReduce를 기반으로 Hadoop MapReduce가 설계되었으며, Hadoop HDFS를 통해 수집 저장됨.

NoSQL

  • 'Not-only SQL' 또는 'No SQL'의 의미.
  • 전통적인 관계형 데이터베이스(RDBMS)와 다른 비관계형 데이터베이스.
  • 대표적인 NoSQL 솔루션으로는 Cassandra, HBase, MongoDB 등이 있음.

빅데이터 분석 기술

  • 빅데이터 분석에 사용하는 기술은 대부분 통계학과 전산학(특히 기계 학습데이터 마이닝) 분야에서 이미 사용한 것들임.
  • 이 분석 기술들의 알고리즘을 대규모 데이터 처리에 맞게 개선하여 빅데이터 처리에 적용.

  • 텍스트 마이닝: 자연어 처리(NLP) 기술을 사용해 비정형 텍스트에서 유용한 정보를 추출하거나 다른 데이터와의 연관성을 파악.
  • 웹 마이닝: 인터넷에서 수집한 데이터를 데이터 마이닝 기법으로 분석.
  • 오피니언 마이닝: 다양한 온라인 소스 및 소셜 미디어 콘텐츠에서 사용자가 표현한 의견을 추출, 요약, 분류하는 감성 분석 기법.
  • 리얼리티 마이닝: 휴대폰 등 기기를 사용한 인간관계와 행동 양태를 추론. (예: 통화 위치, 문자 내용, 행동 특성 분석)
  • 소셜 네트워크 분석: 그래프 이론을 바탕으로 소셜 네트워크 서비스의 연결 구조와 연결 강도를 분석.
  • 분류 (Classification): 미리 정의된 클래스로 구분된 데이터를 학습(Supervised Learning)시켜 새로운 데이터가 속할 데이터 군을 찾아내는 지도 학습 방법. (예: KNN)
  • 군집화 (Clustering): 특성이 비슷한 데이터를 합쳐 Group으로 분류하는 비지도 학습(Unsupervised Learning) 방법.
  • 기계 학습 (Machine Learning): 인공지능 분야에서 인간의 학습을 모델링한 기술. 컴퓨터가 학습할 수 있도록 알고리즘과 기술을 개발. (예: 결정 트리, 은닉 마르코프 모델, 베이지안)
  • 감성 분석 (Sentiment Analysis): 문장의 의미를 파악하여 글의 내용(긍정/부정), 감정(만족/불만족) 등을 분류하고, 이를 시계열적으로 분석하여 이벤트 감지나 평판 변화를 발굴.

빅데이터 표현 기술

  • 데이터 분석 결과를 효과적으로 전달하기 위해, 복잡한 정보를 한눈에 쉽게 이해할 수 있도록 간단한 도표나 3D 이미지 등으로 표현하는 정보 표현 기술.
  • 최근의 빅데이터 표현 기술 중 2009년 구글에서 개발한 Fusion Tables는 방대한 양의 데이터를 표현해 주는 온라인 서비스임.

'Data Engineering' 카테고리의 다른 글

하둡 파일 시스템  (0) 2025.10.31
Apache Kafka  (0) 2025.10.30