본문 바로가기

상상의 창 블로그/배움의 창

[빅데이터분석기사] 1. 빅데이터 분석기획

728x90

 

1. 빅데이터의 특징

* 데이터 구분

- 정량적 데이터(quantitative) : 주로 숫자로 이루어진 데이터 (2022년, 100km/h 등)

- 정성적 데이터(qualitative) : 문자와 같은 텍스트로 구성, 함축적 의미 (철수가 시험에 합격하였다.)

 

* 데이터 유형

- 정형 데이터 : 정해진 형식과 구조에 맞게 저장되도록 구성된 데이터, 연산이 가능

- 반정형 데이터 : 데이터의 형식과 구조가 비교적 유연, 스키마 정보를 데이터와 함께 제공하는 파일형식의 데이터,

연산이 불가능 (XML, JSON, HTML 등)

- 비정형 데이터 : 구조가 정해지지 않은 대부분의 데이터. 연산이 불가능. 텍스트, 음성, 영상 등(TEXT 등)

 

* 지식창조 매커니즘

공통화
서로의 경험이나 인식을 공유하면서
한차원 높은 암묵지로 발전
표출화
암묵지가 구체화되어 외부로 표현됨
연결화
형식지를 재분류하여 체계화
내면화
전달받은 형식지를 다시 개인 것으로
체득

 

 

* 지식의 피라미드 정의

- 데이터 : 가공 전 순수한 수치나 기호, A마트는 연필이 100원, B마트는 200원

- 정보 : 데이터 가공 및 상관관계간 이해를 통해 패턴인식, 의미부여, A마트가 더 싸다

- 지식 : 상호 연결된 정보 패턴을 이해하여 예측한 결과물 : 가격이 싼 A마트에서 연필 사자

- 지혜 : 깊은 이해를 바탕으로 도출되는 아이디어, 다른 상품도 A마트가 B마트보다 저렴할 것이다.

 

* 정보의 특징

- 정확성 / 적시성 / 적당성 / 관련성

 

* 데이터 베이스, 데이터 웨어하우스, 데이터 마트

- 데이터 베이스 : 동시에 복수의 적용 업무를 지원할 수 있도록 복수 이용자의 요구에 대응해서 데이터를

받아들이고 저장, 공급하기 위하여 일정한 구조에 따라서 편성된 데이터의 집합

+ 통합된 데이터 : 동일 내용의 데이터가 중복되지 않음

+ 저장된 데이터 : 컴퓨터가 접근할 수 있는 저장매체에 저장되는 것

+ 공용데이터 : 여러 사용자가 서로 다른 목적으로 데이터를 함께 이용

+ 변화되는 데이터 : 데이터는 현 시점을 나타냄. 지속적으로 갱신됨. 현재의 정확한 데이터 유지해야 함

- 데이터 레이크 : 조직에서 수집한 데이터를 원시 형태(law data)로 저장하는 단일한 데이터 저장소

- 데이터 댐 : 어떤 값을 포함하고 있는 가공되지 않은 1차 자료를 모아 놓은 것

- 데이터 웨어하우스 : 의사결정에 도움을 주기 위해 기관시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로

변환해서 관리하는 데이터베이스

+ 방대한 양의 이력 데이터를 가지고 있는 자료저장소

+ 데이터 웨어하우스의 변경은 시간 순서를 가지고 입력

- 데이터 마트

+ 데이터 웨어하우스와 유사하지만 제한된 업무 도메인을 가짐

+ 데이터가 특정 유형, 특정 업무기능 또는 특정 업무단위로 제한됨

 

* 데이터 웨어하우스의 특징

- 주제지향성 : 고객, 제품 등 의사결정에 필요한 주제와 관련된 데이터들로 구성

- 통합성 : 여러 데이터베이스에서 추출한 데이터를 일관된 형태로 통합하여 저장

- 시계열성 : 시점별 데이터 유지, 데이터간 시간적 관계나 동향 파악 가능

- 비휘발성 : DB는 삽입, 삭제, 수정 작업이 이루어지나 DW에서는 검색작업만 수행되는 읽기 전용

 

* 데이터 웨어하우스 아키텍처

- 데이터 입력(운영계) : OLTP(호스트에 연결된 단말기, 은행단말기 참고), 하둡, JSON, CVS, TXT 등

- ETL : 기업의 내부/외부에서부터 데이터를 추출, 정제 및 가공하여 데이터웨어하우스에 적재

+ Extraction(추출), Transformation(변환), Load(적재)

- 데이터레이크(데이터 댐) : DW 저장은 실시간이 아님. 주단위, 월단위 등

+ 수집된 정형, 비정형 데이터를 가공되지 않은 원래 데이터 형태로 모아둔 것

+ DW 저장이 실시간이 아니므로 원시데이터로 보관하는 장치가 필요

- ODS : 다양한 DBMS 시스템에서 추출한 데이터를 통합적으로 관리

- OLAP : 데이터를 분석해 회계분석, 판매추이 등을 프로세싱하는 것. 대시보드

 

* 빅데이터의 속성

- 특성 : 규모(Volume), 유형(Variety), 속도(Velocity) + 품질(Veracity), 가치(Value)

- 활용 3요소 : 자원, 기술, 인력

 

* 빅데이터가 만들어내는 본질적인 변화

- 사전처리 → 사후처리

- 표본조사 → 전수조사

- 질 → 양

- 인과관계 → 상관관계

 

* 데이터 산업의 진화

- 데이터 처리시대 : DBMS

- 데이터 통합시대 : CRM 등 통해 업무성과 획기적 높임

- 데이터 분석시대 : 하둡, 스파크 등 빅데이터 기술 등장

- 데이터 연결시대 : 새로운 비즈니스 모델 탄생

- 데이터 권리시대 : 마이데이터(데이터 원 소유주인 개인이 자신의 권리 보유, 행사)

 

* 데이터 산업의 구조

- 인프라 영역 : 데이터 수집, 저장, 분석, 관리 등의 기능 담당

- 서비스 영역 : 데이터 활용하기 위한 교육이나 컨설팅, 솔루션 제공 등

* 빅데이터의 위기요인과 통제방안

- 사생활침해 : 개인정보 사용자에게 책임을 지워 적극적 보호장치 강구하도록 유도

- 책임원칙의 훼손 : 예측기술 발달로 잘못하기 전 행정처분 등 발생 우려. 책임원칙 엄격하게 적용

- 데이터 오용 : 기존 데이터 바탕 미래 예측이 정확하지 않을 수 있음. 알고리즘 접근권 오픈. 피해구제

 

* 조직구조

- 용어 정리 : DS(Data Scientist), CoE(Center of Expert, 전문가 조직)

 
집중형

기능형

분산형
CxO

CxO

CxO
DS
CoE
부서1
부서2
DS
CoE

부서1
부서2
부서3

부서1
부서2
부서3







DS CoE
DS CoE
DS CoE
- 전사 분석 업무를 별도의
전담조직에서 수행
- 전략적 중요도에 따라 분석
조직이 전사 분석과제의
우선순위를 정함
- 현업부서와 분석업무가
중복/이원화 가능성 높음

- 일반적인 분석수행구조
- 별도 분석조직 없고 현업
부서에서 분석업무 직접 수행
- 전사적 핵심분석이 어려우며
과거 실적 중심 및 부서에
국한된 협소한 분석 우려

- 분석조직 전문 인력들을 현업부서에
직접 배치하여 분석업무 수행
- 전사 차원의 우선순위 수행
- 분석 결과를 현업에 빠르게 적용
- 베스트 프랙티스 공유 가능
- 부서 분석업무와 역할분담을
명확히 해야 함

 

 

* 데이터 사이언티스트 역량

- Hard Skill

+ 빅데이터에 대한 이론적 지식 : 관련 기법에 대한 이해와 방법론 습득

+ 분석기술에 대한 숙련 : 최적의 분석설계 및 노하우 축적

- Soft Skill

+ 통찰력 있는 분석 : 창의적 사고, 호기심, 논리적 비판

+ 설득력 있는 전달 : 스토리텔링, Visualization

+ 다분야 간 협력 : Communication

 

* 조직의 데이터 분석 모델 및 수준진단

- 분석준비도 : 데이터 분석을 위한 준비도 및 성숙도 진단

- 분석업무 파악 / 인력 및 조직 / 분석 기법 / 분석 데이터 / 분석 문화 / IT 인프라

- 분석성숙도

- 분석 성숙도 진단은 비즈니스 부문, 조직/역량 부문, IT 부문 등 3개 부문을 대상

- 성숙도 수준에 따라 ‘도입 → 활용 → 확산 → 최적화’ 단계

- 분석 수준 진단 결과

높은 성숙도

정착형
확산형
높은
준비도
준비형
도입형

 

 

* 개인정보 판단 기준

- 생존하는 개인에 관한 정보

- 정보의 내용·형태 등은 제한 없음

- 개인을 알아볼 수 있는 정보

 

* 데이터 기본 3법

- 개인정보보호법

- 정보통신망 이용촉진 및 정보보호 등에 관한 법률

- 신용정보의 이용 및 보호에 관한 법률

 

* 데이터3법의 주요 개정내용

- 데이터 이용 활성화를 위한 ‘가명정보’ 개념 도입 및 데이터간 결합 근거 마련

- 개인정보보호 관련 법률의 유사·중복 규정을 정비, 거버넌스 체계 효율화

- 데이터 활용에 따른 개인정보처리자 책임 강화

- 다소 모호했던 개인정보의 판단기준 명확화

 

* 개인정보의 처리 위탁

- 개인정보 처리위탁을 받는 자, 처리위탁을 하는 업무의 내용을 알리고 동의를 받아야 한다.

- 단, 정보통신서비스 제공에 관한 계약을 이행하고 이용자 편의 증진 등을 위한 경우 고지절차와 동의절차를 거치지

않고, 이용자에게 이에 관해 알리거나 개인정보 처리방침 등에 공개할 수 있다.

 

* 개인정보 수집 및 수집 목적내 이용이 가능한 경우

- 정보주체의 동의를 받은 경우

- 법률에 특별 규정이 있거나 법령상 의무준수를 위해 불가피한 경우

- 공공기관이 법령 등에서 정하는 소관업무의 수행을 위해 불가피한 경우

- 정보주체와의 계약의 체결 및 이행을 위하여 불가피하게 필요한 경우

- 명백히 정보주체 등의 급박한 생명, 신체, 재산의 이익을 위해 필요한 경우

- (정보주체의 권리보다 우선하는) 개인정보처리자의 정당한 이익 달성을 위하여 필요한 경우

 

* 개인정보 수집·이용 동의시 필수 고지사항

- 개인정보의 수집, 이용 목적

- 수집하려는 개인정보의 항목

- 개인 정보의 보유 및 이용 기간

- 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우, 그 불이익의 내용

 

* 개인정보 수집 제한

- 개인정보 수집시 그 목적에 필요한 범위에서 최소한의 개인정보만 적법, 정당하게 수집

+ 최소한의 정보 외 개인정보 수집에 동의하지 않는다고 서비스를 거부할 수 없음

- 민감정보, 고유식별정보 처리 제한 : 예외적으로 정보주체에게 별도 동의를 얻거나 법령에서 구체적으로

허용된 경우에 한하여 처리 가능

+ 민감정보 : 사상, 신념, 정치적 견해, 건강정보, 노조/정당 등의 가입, 유전정보, 범죄경력 등

+ 고유식별정보 : 주민등록번호, 여권번호, 운전면허번호 등

 

* 비식별화

- 개인을 식별할 수 있는 요소를 삭제하거나 대체 등의 방법으로 개인을 알아볼 수 없도록 하는 것

+ 식별자 : 개인 또는 개인과 관련한 사물에 고유하게 부여된 값 또는 이름

+ 속성자 : 개인과 관련된 정보로, 다른 정보와 쉽게 결합하는 경우 특정 개인을 알아볼 수 있는 정보

- 비식별화 절차 : 사전검토 → 비식별조치 → 적정성 평가 → 사후관리

 

* 비식별 조치방법

① 가명처리 : 식별할 수 없는 다른 값으로 변경하는 방법

- 휴리스틱 가명화

+ 준식별자에 대항하는 값들을 몇 가지 정해진 규칙 또는 사람의 판단에 따라 가공

+ 식별자의 분포를 고려하거나 수집된 자료의 사전 분석을 하지 않고 모든 데이터를 동일한 방법으로 가공

+ 활용할 수 있는 대체 변수에 한계가 있으며, 다른 값으로 대체하는 일정한 규칙이 노출되는 취약점이 있음

- 암호화 정보 가공시 일정한 규칙의 알고리즘을 적용하여 암호화함으로써 개인정보를 대체

- 시계열 데이터마이닝(K-익명화) : 동일 속성값을 갖는 데이터 K개 이상으로 유지

- 교환 : 미리 정해진 변수들의 집합에 대해 데이터베이스의 레코드와 연계하여 교환

- 단점 : 대체값 부여 시에도 식별 가능한 고유 속성이 계속 유지됨

② 총계 : 데이터 총합 값을 보여주고 개별값을 보여주지 않는 방법

- 총계처리 : 데이터 전체 또는 부분을 집계 (총합, 평균 등)

- 단점 : 정밀분석의 어려움 및 수량이 적을 경우 추론에 의한 식별 가능성이 있음

③ 데이터값 삭제 : 데이터 공유나 개방 목적에 따라 필요 없는 값 또는 개인식별에 중요한 값을 삭제

- 식별자 삭제, 준식별자 부분삭제

- 단점 : 분석의 다양성과 분석 결과의 유효성과 신뢰성이 저하됨

④ 데이터 범주화 : 범주값으로 변환하여 값을 숨김(32세 → 30대)

- 단점 : 정확한 분석결과 도축의 어려움 및 데이터 범위 구간이 좁혀질 경우 추론 가능성이 있음

⑤ 데이터 마스킹 : 식별확률을 높이는 주요 식별자를 보이지 않게 처리

⑥ 차등정보보호 : 추론모형을 통해 노출 위험을 측정하는 척도

⑦ 재현자료 : 원자료와 다르지만 원자료와 동일한 분포를 따르도록 통계적으로 생성한 자료

 

* GDPR

- 유럽 의회에서 유럽 시민들의 개인정보 보호를 강화하기 위해 만든 통합 규정

 

* 프라이버시 모델

― 가능한 추론 형태와 프라이버시 노출에 대한 정량적인 위험성을 규정하는 방법

① K-익명성 : 주어진 데이터 집합에서 같은 값이 적어도 K개 이상 존재하도록 하여 쉽게 다른 정보로 결합할 수

없도록 함

- ex) 동일한 값을 가진 레코드를 k개 이상으로 함. 이 경우 특정개인을 식별할 확률은 1/k임

② L-다양성 : 주어진 데이터 집합에서 함께 비식별되는 레코드들은 동질 집합에서 적어도 L개의 서로 다른 정보를

가지도록 함

- ex) 각 레코드는 최소 1개 이상의 다양성을 가지도록 하여 동질성 또는 배경지식 등에 의한 추론 방지

③ T-근접성 : 민감한 정보의 분포를 낮춰 추론 가능성을 낮추는 기법

- ex) 전체 데이터 집합의 정보분포와 특정정보의 분포 차이를 t이하로 하여 추론 방지

④ M-유일성 : 비식별 데이터셋의 속성을 조합했을 때 동일한 값이 m개 이상이 되도록 하여 재식별 위험을 낮춤

※ 개인정보 차등보호 : 통계나 수리적 방법으로 데이터를 변형하여 위험을 낮추거나, 데이터의 수집 단계에서

직접 정보보호처리를 하는 등의 방법을 사용

 

* 데이터 거버넌스의 정의

- 데이터 거버넌스 : 전사 차원의 데이터 정책 및 지침, 표준화, 운영조직 및 책임 등의 표준화된 관리체계 수립,

운영을 위한 프레임워크 및 저장소 구축.

- 기업에서 가치있는 양질의 데이터를 지속적으로 발굴 및 관리해 비즈니스 자산으로 활용하기 위한 데이터 통합

관리체계. 특히 마스터 데이터, 메타 데이터, 데이터 사전은 데이터 거버넌스의 중요한 관리대상

- 데이터의 가용성, 유용성, 통합성, 보안성, 안전성을 확보

 

* 데이터 거버넌스 구성요소

- 원칙 : 지침과 가이드. 보안, 품질기준 변경관리

- 조직 : 데이터를 관리할 조직의 역할과 책임, 데이터 관리자, 데이터 아키텍트(엔지니어)

- 프로세스 : 데이터 관리를 위한 활동과 체계, 작업절차, 모니터링 활동, 측정활동

 

* 데이터 거버넌스 체계요소

- 데이터 표준화 : 데이터 표준용어설명, 명명규칙(Name Rule), 메타데이터 구축, 데이터사전 구축

- 데이터 관리체계 : 데이터 정합성 및 활용의 효율성을 위해 표준 데이터를 포함한 메타 데이터와 데이터 전의

관리원칙을 수립, 수립된 원칙에 근거, 항목별 상세한 프로세스를 만들고 관리와 운영을 위한 담당자 및 조직별

역할과 책임을 상세히 준비

- 데이터 저장소 관리 : 메타데이터 및 표준 데이터를 관리하기 위한 전사 차원의 저장소 구성

- 표준화 활동 : 표준 준수 여부를 주기적으로 점검하고 모니터링, 조직내 안정적 정착을 위한 계속적 변화관리 및

주기적 교육 진행

 

 

2. 분석 로드맵

* 분석과제 우선순위 평가 기준

- 비즈니스 성과 및 ROI

- 시급성

- 전략적 중요도

- 실행 용이성

 

* 분석절차 관련

- 분석기획 : 사전기획. 의도한 결과를 도출하기 위한 관리방안 마련. (상향식, 하향식 등)

+ 프로젝트 진행을 위한 방향성 설정. 비즈니스 문제에 대한 과제 현황 파악

+ 실제 분석을 수행하기에 앞서 분석을 수행할 과제를 정의, 의도한 결과 도출을 위해 적절한 관리방안 계획

- 분석 마스터 플랜 : 분석 목적이나 목표에 따라 전체적인 방향성을 제시하는 기본계획 (시급성 중심, 난이도 중심)

+ 전략적 중요도, 비즈니스 성과와 ROI, 분석 과제의 실행 용이성을 고려하여 과제의 우선순위를 설정

- 분석 로드맵 : 분석 목표를 기반으로 분석 과제를 수행하기 위한 기준 등을 담아 만든 종합적 계획

+ 단계별로 추진하고자 하는 목표를 명확하게 정의, 추진 과제별 선행 관계를 고려하여 단계별 추진 내용을 정의

+ 데이터 수집 및 확보와 분석 데이터 준비 단계는 순차적으로 진행하고 모델링 단계는 반복적 수행.

 

* 목표시점에 따른 분류

- 단기적 접근방식(과제 중심적 접근)

+ 당면한 과제를 빠르게 해결하기 위한 목적

+ 명확한 해결을 위해 Quick-Win 방식으로 분석

- 중장기적 접근방식(마스터 플랜 접근)

+ 지속적인 분석 문화를 내재화하기 위한 목적

+ 전사적으로 장기적 관점에서 과제를 도출하여 수행

- 혼합방식(분석 기획시 적합)

+ 마스터 플랜을 수립하고 장기적 관점에서 접근하는 것이 바람직

+ 분석의 가치를 증명하고 이해관계자들의 동의를 얻기 위해 과제를 빠르게 해결하여 그 가치를 조기에 체험시킴

 

* 빅데이터의 특징을 고려한 분석 ROI 요소(4V) 및 평가기준

ROI 요소
특징
내용
평가기준
평가요소
투자비용 요소
(Investment)
4V
3V
Volume (크기)
데이터 규모, 데이터 양
난이도
데이터(획득/가공/저장) 비용
분석 적용 비용
분석 수준
Variety (형태)
데이터 종류, 데이터 유형
Velocity (속도)
데이터 생성/처리 속도
비즈니스 효과
(Return)

Value (가치)
분석결과 활용 및 실행을
통한 비즈니스 가치
시급성
(중요도)
전략적 중요도
목표가치(KPI)

 

 

 

 

 

* 포트폴리오 사분면 분석 : 난이도와 시급성 기준 우선순위 선정


시급성
현재
미래
난이도
어려움
I
II
쉬움
III
IV

 

- 시급성 우선순위시 : III → IV → I → II

- 난이도 우선순위시 : III → I → IV → II

- 데이터 양, 특성, 분석범위 등 따라 경영진/실무담당자의 의사결정에 따라 조정 가능

 

* 이행계획 수립

- 반복적인 정련과정을 통해 프로젝트의 완성도를 높이는 방식 주로 사용

- 데이터 수립 및 확보, 분석데이터 준비는 순차형으로

- 모델링 단계는 반복형을 사용

 

* 분석문제 정의 접근방법


분석의 대상(What)
알 때
모를 때
분석의 방식
(How)
알 때
최적화 (Optimization)
통찰 (Insight)
모를 때
솔루션 (Solution)
발견 (Discovery)


하향식
상향식

 

- 하향식 접근방법 : 문제가 주어지고 해답 찾아가는 과정

- 상향식 접근방법 : 문제의 정의 자체가 어려운 경우 데이터를 기반으로 문제의 재정의 및 해결방안 탐색

 

* 하향식 접근방식 (순서 파악)

- 문제 탐색 : 비즈니스 모델 기반 문제 탐색, 외부 사례 기반 문제 탐색

- 문제 정의 : 데이터 분석 문제 변환

- 솔루션 탐색 : 수행 옵션 도출


분석 역량(Who)
확보
미확보
분석기법, 시스템
(How)
기존 시스템
개선 활용
교육 및 채용
신규도입
시스템 고도화
아웃소싱

 

- 타당성 평가 : 타당성 평가 →과제 선정

 

* 상향식 접근방식 (순서 파악)

- 프로세스 분류 : 전사 업무 프로세스를 가치사슬, 메가 프로세스, 메이저 프로세스, 프로세스 단계로 구조화해

업무 프로세스 정의

- 프로세스 흐름 분석 : 프로세스 맵을 통해 프로세스별로 업무 흐름을 상세히 표현

- 분석 요건 식별 : 각 프로세스 맵상의 주요 의사결정 포인트 식별

- 분석 요건 정의 : 각 의사결정 시점에서 무엇을 알아야만 의사결정을 할 수 있는지 정의

 

* 분석 방법론 구성 요건

- 상세한 절차

- 방법

- 도구와 기법

- 템플릿과 산출물

- 어느 정도의 지식만 있으면 활용 가능한 수준의 난이도

 

* 빅데이터 분석 방법론의 개발절차

- 분석기획 → 데이터 준비 →데이터 분석 → 시스템 구현 →평가 및 전개

 

* 분석기획 절차

- 비즈니스 이해 및 범위 설정 → 프로젝트 정의 → 프로젝트 수행 계획 수립 → 프로젝트 위험 계획 수립

 

* 계층척 프로세스 모델의 구성요소

- 단계(Phase)

- 태스크(Task)

- 스텝(Step)

 

* KDD(Knowledge Discovery in Database)

- 데이터마이닝 프로세스. 인공지능, 패턴인식, 시각화 등에 응용

- 분석절차

+ 데이터셋 선택(Selection)

+ 데이터 전처리(Preprocessing)

+ 데이터 변환(Transformation)

+ 데이터 마이닝(Data Mining)

+ 데이터 마이닝 결과 평가(Interpretation/Evaluation)

 

* CRISP-DM

- 계층적 프로세스 모델로 4개의 레벨로 구성

+ 최상위 레벨 : 여러 개의 단계(Phases)로 구성. 각 단계는 일반화 태스크(Generic Tasks)를 포함

+ 일반화 태스크 : 데이터 마이닝의 단일 프로세스를 완전하게 수행하는 단위

+ 세 번째 레벨 : 세분화 태스크(Specialized Tasks)로 일반화 태스크를 구체적으로 수행

+ 마지막레벨 : 프로세스 실행(Process Instance) 데이터 마이닝을 위한 구체적 실행

- 분석절차

+ 업무 이해(Business Understanding)

+ 데이터 이해(Data Understanding)

+ 데이터 준비(Data Preparation)

+ 모델링(Modeling)

+ 평가(Evaluation)

+ 전개(Deployment)

 

* SEMMA

- SAS Institute의 데이터 마이닝 도구와 손쉽게 접목, 데이터 마이닝 프로젝트의 모델링 작업에 중점

- 분석절차

+ 추출(Sample)

+ 탐색(Explorer)

+ 수정(Modify)

+ 모델링(Model)

+ 평가(Assess)

 

 

* 다양한 방법론에 따른 분석모형 프로세스

 

 

 

3. 데이터 확보 계획

* 사전 검토사항

- 필요데이터 정의, 보유데이터 현황 파악, 분석데이터 유형 고려, 편향되지 않고 충분한 데이터 규모,

내부데이터 사용, 외부데이터 수집

 

* 데이터 전처리

- 정제, 통합, 축소, 변환

 

* 데이터 품질 지표

- 정확성, 완전성, 적시성, 일관성

 

* 데이터 처리 프로세스

 

* 데이터 분석 절차

- 문제인식 → 연구조사 → 모형화 → 데이터 수집 → 데이터 분석 → 분석결과 제시

 

* 분석프로젝트 중점 관리 영역

- 데이터 크기, 데이터 복잡도, 속도, 분석 모형 복잡도, 정확도와 정밀도

 

* 분석목표 정의서 구성요소

- 원천 데이터 조사, 분석방안 및 적용, 가능성 판단, 성과평가 기준

* 정확도와 정밀도

- 정확도는 모형과 실제값 사이의 차이를 측정하는 지표

- 정밀도는 모형을 계속해서 반복했을 때 결과의 일관성을 측정하는 지표

- 정확도와 정밀도가 높은 모델은 편향과 분산이 낮다

- 정확도가 정밀도는 Trade off인 경우가 많음

 

 

4. 빅데이터 플랫폼

* 빅데이터 플랫폼 구성

 

* 빅데이터 플랫폼 구조

- 소프트웨어 계층 : 빅데이터 어플리케이션 구성, 데이터 처리 및 분석과 이를 위한 데이터 수집, 정제 등

- 플랫폼 계층 : 자원 및 데이터 할당, 프로파일링, 데이터 관리, 자원관리 등

- 인프라스트럭처 계층 : 자원배치, 노드, 스토리지, 네트워크 관리 등

 

* 빅데이터 플랫폼의 부하 제어 기능

- 컴퓨팅 부하 제어, 저장 부하 제어, 네트워크 부하 제어

 

 

5. 데이터 수집

* 수집

- 크롤링(crawling) : 분산 저장되어 있는 문서를 수집하여 검색 대상의 색인으로 포함시키는 기술

+ 로그 수집기, 센서 네트워크, RSS Reader/Open API, ETL 프로세스

- Kafka : 데이터 스트림을 실시간으로 관리하기 위한 분산 메시징 시스템. (장애대처)

+ 2011년 링크드인에서 개발, 2012년 아파치 탑 레벨 프로젝트가 됨

+ 데이터 손실을 막기 위해 디스크에 데이터 저장

+ 파티셔닝을 지원, 다수의 카프카 서버에서 메시지를 분산처리 가능, 시스템 안정성을 위해 로드 밸런싱과

내고장성(Fault Tolerant)를 보장

 

* 데이터 수집 시스템 구축 절차

- 수집데이터 유형 파악 → 수집기술 결정 → 아키텍처 수립 → 하드웨어 구축 → 실행환경 구축

 

* 원천 데이터 정보 습득시 필요한 정보

- 데이터의 수집 가능성, 보안, 정확성, 수집 난이도, 수집 비용

 

* 데이터 확보 비용 산정 요소

- 데이터의 종류, 크기 및 보관 주기, 데이터 수집 주기, 수집 방식, 수집 기술, 데이터의 가치성

 

* 데이터 수집 기술

- 정형데이터 수집기술 : 관계형 데이터와 분산환경 데이터 간의 전송데이터 (DBToDB, ETL, FTP 등)

+ 아파치 스쿱

→ 관계형 데이터스토어 간 대량 데이터를 효과적으로 전송하는 도구

→ 커넥터를 사용하여 MySQL, Oracle, MS SQL 등 관계형 데이터베이스의 데이터를HDFS로 수집

→ 관계형 데이터베이스에서 가져온 데이터들을 하둡 맵리듀스로 변환하고 변환된 데이터들을 다시 관계형

데이터베이스로 내보낼 수 있음

→ 데이터 가져오기/내보내기 과정을 맵리듀스를 통해 처리하기 때문에 병렬처리가 가능하고 장애에도 강함

- 로그데이터 수집기술 : 시스템로그, IOT센서 로그, 전산장비로그(Flume, Scribe, Chukwa, FTP 등)

+ 아파치 플럼 : 대용량의 로그 데이터를 효과적으로 수집, 집계, 이동시키는 분산 서비스 제공 솔루션

- 웹크롤링 수집기술 : 웹상 콘텐츠 데이터 (Crawlar, Scrap, Nutch 등)

+ 스크래피 : 웹사이트를 크롤링하고 구조화된 데이터를 수집하는 도구, 파이썬으로 작성됨

 

* 데이터 적절성 검증 방법

- 데이터 누락, 소스데이터와 비교, 데이터의 정확성, 보안 사항 점검, 저작권 점검, 트래픽 발생 여부 등

 

* 빅데이터 수집기법

- 크롤링 : 웹문서 정보 수집(웹문서)

- 스크래핑 : 웹 문서 중 특정 정보만 자동 추출 (웹데이터)

- FTP : TCP/IP 프로토콜 이용하여 인터넷서버로부터 각종 파일들을 송수신(파일)

- Open API : 서비스, 정보, 데이터 등 개방된 정보로부터 API를 통해 데이터 수집(실시간 데이터 수집)

- RSS : XML기반 콘텐츠 배급 프로토콜 : 콘텐츠 수집

- Streaming : 인터넷에서 오디오, 비디오 등 멀티미디어 데이터를 송/수신 할 수 있는 기술(실시간 데이터 수집)

- Log Aggregator : 서버/웹/트랜젝션/DB 등 각종 서비스 로그 수집 오픈소스(로그데이터)

- RDB Aggregator : RDB에서 정형데이터 수집하여 HDFS나 Hbase 등 NoSQL에 저장하는 오픈소스 기술

 

* 데이터 변환 방식의 종류

- 비정형 데이터 → 정형 데이터 (RDB)

- 수집데이터 → 분산파일시스템 (HDFS 등)

- 주제별, 시계열적으로 저장 (데이터 웨어하우스(DW))

- 키-값 형태로 저장 (데이터 웨어하우스(DW))

 

* 데이터 변환 기술

- 평활화(Smoothing) : 아웃라이어 값 변환 기술, 구간화, 군집화 등

- 집계(Aggregation) : 다양한 차원 방법으로 데이터 요약. 복수의 속성이나 객체를 줄이고 스케일 변경

- 일반화(Generalization) : 하위수준 데이터 속성을 상위 속성으로 변환 ex) 연령범위 (10, 20)을 ‘청소년’ 등

범주형으로 바꿈

- 리스케일링(Normalization) : 데이터를 정해진 구간 내에 들도록 하는 기법. 최소, 최대 정규화 등 통계적 기법

- 속성 생성(Attribute / Feature Construction) : 데이터 통합을 위해 새로운 속성이나 특징을 만드는 기법

 

* 정형 데이터 품질 기준

- 완전성 : 필수항목에 누락이 없어야 함

- 유일성 : 데이터 항목은 유일해야 하며 중복 불가(참조 무결성)

- 유효성 : 정해진 데이터 유효범위 및 도메인을 충족

- 일관성 : 구조, 값, 표현되는 형태가 일관되게 정의

- 정확성 : 현실에 존재하는 객체의 표현 값이 정확히 반영

+ 선후 관계 정확성, 계산/집계 정확성, 최신성, 업무규칙 정확성

 

* 비정형 데이터 품질 기준

- 기능성 : 해당 컨텐츠가 특정 조건에서 사용될 때 요구를 만족하는 기능 제공 정도

- 신뢰성 : 규정된 신뢰 수준을 유지, 사용자로 하여금 오류를 방지할 수 있는 정도

- 사용성 : 사용자에 의해 이해되고 선호되는 정도

- 효율성 : 사용되는 자원의 양에 따라 요구된 성능을 제공하는 정도

- 이식성 : 다양한 환경과 상황에서 실행될 가능성

* 정형데이터 품질진단

- 프로파일링 기법을 통해 진단

※ 프로파일링 기법 : 데이터 현황분석을 위한 자료수집, 데이터의 통계패턴 등을 수집, 잠재적 오류징후를

발견하는 방법

- 메타데이터 수집 및 분석 : 테이블 정의서 등 수집하여 누락, 불일치 내역 추출

- 칼럼 속성 분석 : 칼럼 총 건수, 유일값 수, NULL값 수, 공백값 수, 최대값, 최대빈도 등 유효범위 내 존재여부 판단

- 누락값 분석 : 필수 입력값 누락 여부 확인

- 값의 허용범위 분석 : 범위 내 속성값 확인

- 허용값 목록 분석

- 문자열 패턴 분석

- 날짜 유형 분석 : 형식 등 일관성

- 기타 특수도메인(특정 번호 유형) 분석 : 사업자번호, 주민등록번호 등

- 유일값 분석 : 유일해야 하는 칼럼의 중복 여부

- 구조분석 : 관계분석, 참조 무결성, 구조 무결성 등

 

 

6. 데이터 저장

* 저장

- HBase : HDFS 기반의 컬럼기반 DB. 구글의 빅테이블 논문 기반으로 개발

→ 실시간 랜덤조회 및 업데이트 가능. 각 프로세스는 개인이 데이터를 비동기적으로 업데이트 가능

- 공유 데이터 시스템, 병렬 데이터베이스 관리 시스템, 분산 파일 시스템, 네트워크 저장 시스템

 

* 데이터 저장 방식

- 파일 시스템, 관계형 데이터베이스, 분산처리 데이터베이스

 

* 분산파일 시스템(DFS)

- 네트워크를 통해 물리적으로 다른 위치에 있는 여러 컴퓨터에 자료를 분산 저장

+ 마치 로컬 시스템에서 사용하는 것처럼 동작하게 하는 시스템

 

* 데이터 적재

① 데이터의 유형과 실시간 처리 여부에 따라 구분

② 데이터 수집 도구 이용, NoSQL DBMS가 제공하는 도구를 이용, 관계형 DBMS의 데이터를 NoSQL DBMS에서 적재

 

* 데이터 적재도구(로그 수집기)

① Flume : 서버에 분산된 대용량 로그 데이터를 한곳으로 모을 수 있으며, 안정성과 가용성이 높다

② Scribe : 여러 서버에 실시간 스트림되는 로드게이터 취합

③ Chukwa : Flume과 구조가 유사, 로그데이터 수집 및 분석(야후에서 개발)

 

* 데이터 적재 완료 테스트를 위한 정형 데이터 체크리스트

- 테이블의 개수, 속성의 수, 데이터 타입의 일치 여부, 레코드 수 일치 여부

 

* 빅데이터 저장시스템 선정을 위한 분석

- 기능성 비교분석(P.174 읽어보기)

+ 데이터 모델

+ 확장성

+ 트랜잭션 일관성

+ 질의 지원

+ 접근성

- 분석방식 및 환경

- 분석대상 데이터 유형

- 기존 시스템과의 연계

 

* NoSQL

- 데이터 모델을 단순화하여 설계된 비관계형 데이터베이스

+ Hbase, MongoDB, Cassandra, Cloudata 등

- 특징

+ 스키마 프리 구조, 비정형데이터에 유용

+ 분산병렬처리에 적합한 확장성 제공

+ 단순한 데이터 모델로 4가지 형태의 NoSQL DB가 있어 용도별로 적합한 것 선택

- key-value DB

+ 데이터를 키와 그에 해당하는 값의 쌍으로 저장하는 모델에 기반

+ 관계형 데이터베이스보다 확장성이 뛰어나고 질의 응답 시간이 빠름

+ 키와 값의 쌍으로 저장. RDB보다 확장성 뛰어나고 질의응답시간 빠름 (Redis, Dynamo DB)

- column-oriented DB

+ 데이터를 로우가 아닌 칼럼 기반으로 저장하고 처리

+ 테이블기반으로 테이블 개념 제공, Row가 아닌 컬럼기반 (Cassandra, Hbase)

- document DB

+ 문서 형식의 정보를 저장, 검색, 관리하기 위한 데이터베이스

+ key value 데이터베이스보다 문서의 내부구조에 기반을 둔 복잡한 형태의 데이터 저장을 지원

+ 문서형태 저장, 조회, 계층적 트리구조 (MongoDB, 아마존 SimpleDB, 아파치 CouchDB)

- Graph DB : 그래프 형식으로 데이터를 저장, 표현 (Neo4J)

 

* 하둡분산파일시스템(HDFS)

① 특징

- 분산처리기술. 자바기반 프레임워크로 대용량 데이터 분산처리기능 제공

- 하둡은 HDFS와 맵리듀스로 구성. 블록구조의 파일시스템. 블록이 복제되어 있으므로 특정서버의 하드가

오류가 생겨도 복제된 블록을 이용해 데이터 조회 가능

- HDFS는 하나의 네임노드(마스터서버)와 다수의 데이터 노드(슬레이브 서버)로 구성

- 구글파일시스템(GFS)와 동일한 소스코드 사용

② 네임노드 역할 : 메타데이터 관리, 데이터 노드 모니터링, 블록 관리

③ 데이터노드 역할 : 입출력 요청 처리 역할, 하나의 파일이 여러개 블록으로 나눠져 각 데이터 노드에 저장

④ 장점

- 대용량 비정형 데이터 저장 및 분석에도 효율적

- 클러스터 구성을 통해 멀티 노드로 부하를 분산

- 개별적 서버에서 진행되는 병렬처리 결과를 하나로 묶어 시스템 과부하나 병목현상을 줄여줌

- 하둡은 장비를 증가시킬수록 성능이 향상됨

- 오픈소스, 무료이용

 

* 구글파일시스템(GFS)

① 마스터, 청크 서버, 클라이언트로구성

- 마스터 : GFS 전체 상태 관리, 통제

- 청크 서버 : 물리적인 하드디스크의 실제 입출력 처리

- 클라이언트 : 파일 읽고 쓰는 동작을 요청하는 어플리케이션

② 파일들은 일반적 파일시스템과 유사하게 64MB로 고정된 크기의 청크들로 나누어 저장

③ 가격이 저렴한 서버에도 사용되도록 설계, 하드웨어 안정성이나 자료 유실에 대해 고려하여 설계, 응답시간이

조금 길더라도 데이터의 높은 처리성능에 중점

 

* 맵리듀스(데이터 처리과정)

- 구글에서 대용량 처리를 분산병렬컴퓨팅에서 처리하기 위해 제작한 소프트웨어 프레임워크

- 효과적 병렬 및 분산처리 지원

- 장점 : 단순, 사용이 편리, 비정형데이터 모델에 유연하게 지원 가능, 저장 구조와 독립적, 확장성

- 단점 : 복잡한 연산 어려움, 기존 DBMS가 제공하는 스키마, 질의언어, 인덱스 등의 기능을 지원하지 않음

- 맵리듀스 연산과정 : Input - Splitting - Mapping -Shuffling - Reducing - Final result

 

* CAP 이론

- 분산컴퓨팅 환경의 특징을 일관성, 가용성, 지속성으로 정의, 어떤 시스템이던 3개 특성을 동시에 만족시키기 어려움

- 일관성(Consistency) : 분산환경에서 모든 노드가 같은 시점에 같은 데이터를 보여주어야 한다

- 가용성(Availability) : 일부 노드가 다운되어도 다른 노드에 영향을 주지 않아야 한다

- 지속성(Partition Tolerance) : 데이터 전송 중에 일부 데이터를 손실하더라도 시스템은 정상 동작해야 한다

- RDBMS : 일관성과 가용성 선택 (EX, 트랜잭션 ACID 보장(금융서비스)

- NoSQL : 일관성이나 가용성 중 하나를 포기하고 지속성을 보장

+ C+P형 : 대용량 분산 파일 시스템(성능보장)

+ A+P형 : 비동기식 서비스(아마존, 트위터 등)

 

* 기타

- 분산 병렬 컴퓨팅 : 다수의 독립된 컴퓨팅 자원을 네트워크상에 연결하여 이를 제어하는 미들웨어를 이용해

하나의 시스템으로 동작하게 하는 기술

- Spark : 인메모리 기반 범용 데이터 처리 플랫폼. 하둡보다 빠름

+ 배치, 머신러닝, SQL질의, 스트리밍, 그래프 라이브러리 등 다양한 작업

+ 스파크는 주로 실시간 처리영역, 하둡은 배치 처리영역에서 사용됨

- Hive : 하둡기반 데이터 웨어하우징 솔루션. 페이스북에서 개발, SQL과 유사한 쿼리언어(HiveSQL) 제공

+ 자바를 모르더라도 하둡데이터를 쉽게 분석할 수 있게 도와주는 역할

- Mahout : 하둡기반 데이터마이닝 알고리즘 구현한 오픈소스, 분류, 클러스터링 등 주요 알고리즘 지원

- Impala : 분산쿼리엔진. 데이터조회를 위한 인터페이스, HiveSQL을 사용

- Pig : 대용량 데이터 집합을 분석하기 위한 플랫폼

- Tajo : 하둡기반 분산데이터 웨어하우스 프로젝트. 한국주도 개발. 하둡 분석시 맵리듀스 사용하지 않고 SQL을 사용,

HDFS파일을 바로 읽어내는 기술. ETL 등 대규모 데이터 처리와 실시간 상호분석시 사용할 수 있음

 

 

 

 

728x90