본문 바로가기
빅데이터분석기사

[빅데이터분석기사 필기] 1-3 데이터 수집 및 저장 계획

by 아마도개발자 2024. 8. 7.

 

 

1. 데이터 수집

가. 데이터 수집 기법

  • 빅데이터 수집 기법
구분 특징 대상
Log Aggregator 웹 서버 로그, 웹로그, 트랜잭션 로그, DB로그 등 각종 서비스 로그 수집 오픈 소스 기술 로그 데이터 수집
크롤링 SNS, 웹 뉴스 정보 등 인터넷상에서 제공되는 웹 문서에 대한 정보 수집 웹 문서 수집
스크래핑 인터넷 웹 사이트에 노출되는 내용 중 특정 정보만을 추출하고, 추출과 관련된 모든 동작을 자동 수행하는 기술 웹 데이터 수집
FTP TCP/IP 프로토콜을 이용하여 인터넷 서버로부터 각종 파일 송수신 파일 수집
Open API 서비스, 정보, 데이터 등 오픈된 정보로부터 API를 통해 데이터를 수집하는 기술 실시간 데이터 수집
RSS 웹상의 최신 정보를 공유하기 위한 XML 기반의 콘텐츠 배급 프로토콜 Contents 수집
Streaming 인터넷에서 음성, 오디오, 비디오 등 멀티미디어 데이터를 실시간으로 송/수신하는 기술 실시간 데이터 수집
RDB Aggregator 관계형 데이터베이스에서 정형 데이터를 수집하여 HDFS나 NoSQL에 저장하는 오픈 기술 RDB기반 데이터 수집

 

  • 정형 데이터 수집 기법
특징 주요 특징
ETL - Extract Transform Load의 약어
- 데이터 원천으로부터 수집한 데이터를 데이터 웨어하우스와 데이터 마트로 원 데이터를 이동시키기 위해 사용하는 추출, 변환, 적재 프로세스 및 기술을 의미
FTP - File Transfer Protocol의 약어
- TCP/IP프로토콜을 이용하여 서버와 클라이언트 사이에 파일 전송
API - Application Programming Interface의 약어
- 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
- 시스템 간 연동을 통해 실시간으로 데이터를 수신할 수 있는 기능을 제공
Sqoop - 구조화된 관계형 데이터베이스와 아파치 하둡 간의 대용량 데이터들을 효율적으로 변환해 주는 CLI app.
- 장애 허용 능력 및 병렬 처리 가

 

  • 반정형 데이터 수집 기법
종류 주요 특징
Scribe - 페이스북에서 개발한 실시간 스트리밍 로그 데이터 수집 애플리케이션
- 분산 서버에서 발생한 데이터를 중앙 집중 서버로 전송하는 방식
Flume - 분산환경에서 대량의 로그 데이터를 효과적으로 수집하고 합친 후 효율적으로 전송할 수 있는 서비스
- 로그 유실에 대한 신뢰 수준을 상황에 맞게 변경하여 신뢰성 있는 데이터 수집 수행
Chukwa - 분산된 노드들의 다양한 로그 데이터를 수집하고 수집된 데이터를 HDFS에 저장하고 분석하기 위한 시스템
- 주요 수집 로그는 모니터링 록, 하둡 로그, 응용프로그램 로그 등

 

  • 비정형 데이터 수집 기법
종류 주요 특징
스크래프(Scrapy) - Python으로 작성된 오픈소스 웹 크롤링 프레임워크
- API를 이용하여 데이터를 추출하거나 범용 웹 크롤러로 사용 가능
아파치 카프카 - 실시간 데이터 피드를 관리하기 위해 높은 처리량, 낮은 지연시간을 지닌 플랫폼 제공
- 분산 트랜젝션 로그로 구성, Scale-Out 방식의 수평 확장 가능
웹 로봇 - 사람과의 상호작용 없이 연속된 웹 트랜잭션들을 자동으로 수행하는 소프트웨어 프로그램
웹 크롤러 - 웹 페이지의 특정 형태 정보 수집에 이용되거나 웹사이트 자동 유지 관리 작업에 이용되기도 함
- www를 탐색하는 컴퓨터 프로그램. 웹을 돌아다니며 만나는 모든 문서 정보를 수집

 

나. 데이터 소스에 따른 수집 방법

데이터 원천 개념 대표적 수집 방법
내부 데이터 자체적으로 보유한 내부 파일 시스템, rRDBMS, 센서 등에 접근하여 수집 ETL 방식
외부 데이터 인터넷으로 연결된 외부 데이터 수집 크롤링

 

다. 빅데이터 수집 시스템의 요건

  • 확장성, 안정성, 유연성, 실시간성

 

2. 데이터 유형 및 속성 파악

가. 정성적 데이터와 정량적 데이터의 수집 방법

유형 수집방법
정성적 데이터 FGI
(Focus Group Interview)
심층 면접
(In-depth Interview)
델파이조사
(Delphi method)
관찰조사 / 동반쇼핑
정량적 데이터 면접조사
전화/우편/Fax/E-Mail 조사
온라인 조사
CLT 조사
(Central Location Test)
갱 서베이

 

나. 구조 관점의 데이터 유형

유형 특성 종류 수집기술
정형 데이터 - 정형화된 스키마를 가짐
- 일관성 있는 값과 형식을 가짐
관계형 데이터베이스, 스프레드 시트, 파일 통계 ETL, FTP, Open API, Sqoop
반정형 데이터 - 정형화된 스키마를 가짐
- 값과 형식에서 일관성이 없음
- 메타데이터 포함
XML, HTML, 웹 로그, 알람, 시스템 로그, JSON, RSS, 센서 데이터 Crawling, RSS, FTP, Open API, Flume, Scribe, Chukwa
비정형 데이터 - 스키마가 없음 소셜 미디어, NoSQL, 웹 게시판, 텍스트, 이미지, 오디오, 비디오 이진 파일형태, 스크립트 파일 형태

 

3. 데이터 변화

가. 데이터 변환 기술

기술 내용
평활화
(Smoothing)
- 데이터로부터 잡음을 제거하기 위해 데이터 추세에서 벗어나는 값을 변환
- 구간화, 군집화 방법을 이용
집계
(Aggregation)
- 다양한 차원의 방법으로 데이터를 요약
- 여러 개의 표본을 하나의 표본으로 줄이는 방법
일반화
(Generalization)
- 특정 구간에 분포하는 값으로 스케일을 변화
- 특정 데이터가 아닌 범용 데이터에 적합한 모델을 만듦
정규화
(Normalization)
- 데이터가 정해진 구간내에 포함되도록 함
- 최소-최대 정규화, z-스코어 정규화, 소수 스케일링 등 통계기법 적용
속성/생성
(Attribute/Feature Construction)
- 데이터 통합을 위해 새로운 속성 및 특징 만듦
- 주어진 여러 데이터 분포를 대표할 수 있는 새로운 속성 및 특징 활용

 

나. ETL프로세스

  • ETL
    • 데이터의 이동 및 변환 절차와 관련된 업계 표준용어, 서로 다른 시스템 간의 데이터 공유를 위한 가장 일반적인 형태의 하나이며 기존의 레거시 시스템 환경으로부터 빅데이터를 추출하여 비즈니스 데이터로 변환할 수 있도록 지원
    • 다양한 데이터 원천으로부터 추출 및 변환된 데이터를 운영데이터 스토어, 데이터 웨어하우스, 데이터 마트 등에 적재하는 작업에서 핵심적인 역할 수행
    • 데이터의 이동 및 변환이 주 목적이며 데이터 통합, 데이터 이동, 마스터 데이터 관리 등의 작업을 위해서도 활용
    • 다양한 시스템들 간 대용량의 데이터 교환이 필요하거나 복잡한 비즈니스 룰이 적용되는 데이터 교환이 필요한 경우 활용
    • Extraction(추출): 하나 또는 그 이상의 데이터 원천으로부터 데이터 획득
    • Transformation(변환): 데이터 클렌징, 표준화, 형식변환, 통합 등다수 애플리케이션에 내장된 비즈니스 룰의 적용
    • Load(적재): 변환된 데이터를 특정 목표 시스템에 적재
  • ETL의 기능
    • 논리적 데이터 변환
    • 도메인 검증
    • DBMS간 변환
    • 데이터의 요약
    • 데이터 키 값으로 시간 값의 추가
    • 데이터 키 값의 재구성
    • 레코드 통합
    • 불필요한 데이터 삭제 및 중복 데이터 삭제

 

4. 데이터 비식별화

가. 개념

  • 데이터 내에 개인을 식별할 수 있는 정보가 있는 경우 이의 일부 또는 전부를 삭제하거나 혹은 일부를 속성 정보로 대체하여 처리, 개인을 식별하기 어렵게 만듦
  • '개인정보 비식별 조치 가이드라인'을 만들면서 시작

나. 비식별화 기술

  • 식별자 처리 방지 기술
처리기법 내용 예시 세부기술
가명처리 개인 식별이 가능한 데이터에 대하여 직접적으로 식별 할 수 없는 다른 값으로 대체 홍길동, 35세
=>임꺽정, 30대
휴리스틱 가명화, 암호화, 교환 방법
총계처리 개인정보에 대해 통계값을 적용하여 특정 개인을 판단할 수 없도록 임꺽정 180CM,
홍길동 170CM
=> 학생 키 합 350CM,평균 175CM
총계처리, 부분총계, 라운딩, 재배열
데이터 삭제 개인정보 식별이 가능한 특정 데이터 삭제 주민등록번호 901231-1234567
=> 90년대생 남자
식별자 삭제, 식별자 부분삭제, 레코드 삭제, 식별요소 전부삭제
데이터 범주화 단일 식별 정보를 해당 그룹의 대표값으로 변환 하거나 구간값으로 변환하여 식별 방지 홍길동 35세
=>홍씨, 30~40대
감추기, 랜덤 라운딩, 범위 방법, 제어 라운딩
데이터 마스킹 개인 식별 정보에 대하여 대체값으로 변환 홍길동 35세
=>서울 거주, OO대학 재학
임의 잡음 추가, 공백과 대

 

  • 세부기술 특징
세부기술 내용 및 특징
휴리스틱 가명화 식별자에 해당하는 값들을 정해진 규칙으로 대체 혹은 가공
암호화 정보 가공 시 알고리즘을 적용해 암호화
교환 방법 기존 DB레코드를 사전에 정해진 외부 변수의 값과 교환
총계처리 데이터 전체 또는 부분을 집계
부분총계 데이터셋 내 일정부분 레코드만 총계처리
라운딩 집계 처리된 값에 대해 라운딩 기준을 적용해 최종 집계처리
재배열 기존 정보값을 유지하면서 갱니이 식별되지 않도록 데이터를 재배열
식별자 삭제 식별자를 단순 삭제
식별자 부분삭제 식별자 일부를 삭제
레코드 삭제 다른 정보와 뚜렷하게 구별되는 레코드 전체를 삭제
식별요소 전부삭제 잠재적으로 개인을 식별할 수 있는 속성자까지 삭
감추기 데이터의 평균 또는 범주값으로 변환
범위 방법 수치데이터를 임의의 수 기준의 범위로 설정
랜덤 라운딩  데이터를 임의의 수를 기준으로 올림 또는 내림
제어 라운딩 랜덤 라운딩에서 행과 열을 일치
임의 잡음 추가 임의의 숫자 등 잡음을 추가
공백과 대체 특정항목의 일부 또는 전부를 공백 혹은 대체문자로 치

 

5. 데이터 품질 검증

가. 데이터 품질

  • 데이터가 조직 구성원, 고객 등 데이터 이용자의 만족을 충족시킬 수 있는 수준
  • 고품질 데이터의 특징
    • 관련성: 데이터 이용자의 요구사항을 충족하는 정도
    • 정확성: 측정하고자 하는 모집단의 특성이나 크기를 얼마나 정확하게 측정했는지를 평가
    • 시의성/정시성: 통계의 현실 반영도와 예고된 공표 시기를 정확히 준수 하는지를 평가
    • 비교성/일관성: 시간 또는 공간이 달라도 통계가 동일한 기준으로 집계되어 서로 비교가 가능한지, 동일한 현상에 대해 서로 다른 기초 자료나 작성주기 등에 의해 작성된 통계자료들이 얼마나 유사한 결과를 보이는지 평가
    • 접근성/명확성: 이용자가 통계자료에 얼마나 쉽게 접근할 수 있는지, 통계가 어떻게 만들어졌는지에 대한 정보제공 수준

나. 데이터의 품질 기준

  • 정형 데이터의 품질 기준
품질 기준 내용
완전성
(Completeness)
필수항목에 누락이 없어야 함
유일성
(Uniqueness)
데이터 항목은 유일해야하며 중복되어서는 안 됨
유효성
(Validity)
데이터 항목은 정해진 데이터 유효범위 및 도메인을 충족해야 함
일관성
(Consistency)
데이터가 지켜야 할 구조, 값, 표현되는 형태가 일관되게 정의되고, 서로 일치해야 함
정확성
(Accuracy)
실세계에 존재하는 객체의 표현 값이 정확히 반영 되어야 함

 

  • 비정형 데이터의 품질 기준
품질 기준 내용
신뢰성
(Reliability)
규정된 조건 내에세 신뢰수준을 유지하고 사용자 오류를 방지할 수 있어야 함
기능성
(Functionality)
특정 조건에서 사용 시 명시된 요구 및 내재된 요구사항을 만족시킬 수 있는 기능을 제공
효율성
(Efficiency)
규정된 조건 내에서 사용되는 자원의 양에 대비해 요구된 적정한 성능을 제공해야 함
사용성
(Usability)
데이터를 사용 및 분석하게 될 이용자에 의해 충분히 이해될 수 있고 선호될 수 있어야 
이식성
(Portability)
다양한 환경 및 상황에서 해당 데이터들이 실행할 수 있어야 함

 

6. 데이터 저장

가. 빅데이터 저장 기술

  • 대용량의 데이터 저장을 위한 관련 기술은 분산 파일 시스템, NoSQL, 병렬DBMS, 클라우드 파일 저장시스템, 네트워크 구성 저장 시스템 등이 있다.

나. 분산 파일 시스템

  • 네트워크를 통해 물리적으로 다른 위치에 있는 여러 컴퓨터에 자료를 분산 저장하여 마치 로컬 시스템에서 사용하는 것처럼 동작하게 하는 시스템
  • 종류
    • 하둡: 분산 컴퓨팅 환경을 지원하는 가장 대표적인 도구
    • 하둡 분산파일 시스템(HDFS): 클라우드 컴퓨팅 환경을 구축하기 위해 이용하며 대용량 데이터의 분산 저장 기능을 제공
    • 구글 파일 시스템(GFS): Google File System으로 구글의 대규모 클러스터 서비스 플랫폼의 기반이 되는 시스템

다. NoSQL

  • 기존 RDBMS의 한계를 느끼고 새로 등장한ㄷ ㅔ이터 저장 기술
  • 키-값을 이용하여 간단하게 데이터를 저장
  • 대표적 방법으로 Cassandra, HBase

라. HBase

  • 구글 Bigtable을 기반으로 하여 자바로 개발한 비관계형 데이터베이스
  • 스키마 지정 및 변경 없이 데이터 저장 가능, 하둡의 분산파일 시스템에서 동작하여 확장성이 보장되는 시스템
  • 대용량 데이터를 안정적으로 다루는데 효과적이며 전체 데이터에 대한 일관성을 보장
  • HDFS, MapReduce와 함께 사용하기 최적화

 

마. 데이터 웨어하우스와 데이터 레이크

  • 데이터 웨어하우스
    • 정의 
      • 사용자의 의사 결정 지원을 위해 데이터를 분석 가능한 형태로 저장한 중앙 저장소로, 정보와 창고의 합성어
      • 기존 정보를 활용해 더 나은 정보를 제공하고, 데이터 품질을 향상시키며, 조직 변화를 지원하고 비용과 자원관리의 효율성을 향상시키는 것이 목적
    • 특징
      • 통합성: 기존 운영시스템이 부서 혹은 기관별로 따로 데이터를 중복 관리하였떤 것에 비해, 데이터 웨어하우스는 다양한 데이터 원천으로부터 데이터를 모두 통합하여 관리
      • 주제지향성: 기능 및 업무 중심이 아닌 주제를 중심으로 구성, 최종 사용자가 이해하기가 쉬움
      • 시계열성: 시간에 따른 변경 이력 데이터를 보유
      • 비휘발성: 데이터 웨어하우스에 저장되는 데이터는 삭제 및 변경되지 않고, 일단 적재가 완료되면 읽기 전용 형태의 스냅 샷 데이터로 존재
  • 데이터 레이크
    • 개념
      • 빅데이터를 효율적으로 분석하고 사용하기 위해 다양한 영역의 원 데이터를 한 곳에 모아서 관리하고자 하는 목적에서 등장
      • 수 많은 정보 속에서 의미 있는 내용을 찾기 위해 방식에 상관없이 데이터를 저장하는 시스템
    • 특징
      • ETL과정이 필요 없음(형식에 상관없이 데이터를 저장하기 때문)
      • 유연성
      • 확장성

바. 데이터 거버넌스

  • 개요
    • 전사 차원의 모든 데이터에 대해 정책 및 지침, 표준화, 운영 조직 및 책임 등의 표준화된 관리체계를 수립하고 운영을 위한 프레임워크 및 저장소를 구축하는 것
    • 마스터 데이터, 메타 데이터, 데이터 사전은 데이터 거버넌스의 중요 관리 대상
    • 거버넌스 체계를 구축함으로써 데이터의 가용성, 유용성, 통합성, 보안성, 안전성 확보
  • 구성요소
    • 원칙
      • 데이터를 유지, 관리하기 위한 지침 및 가이드
      • 보안, 품질 기준, 변경관리
    • 조직
      • 데이터를 관리할 조직의 역할과 책임
      • 데이터 관리자, 데이터베이스 관리자, 데이터 아키텍트
    • 프로세스
      • 데이터 관리를 위한 활동과 체계
      • 작업 절차, 모니터링 활동, 측정 활동
  • 체계
    • 데이터 표준화
    • 데이터 관리 체계
    • 표준화 활동
    • 데이터 저장소 관리