IT/빅데이터분석

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

unicorn 2023. 3. 14. 14:42
728x90
반응형

1.3 데이터수정및 저장계획

 

* 데이터구조적 분류 - 정형데이터, 비정형 데이터, 반정형 데이터 (실시간데이터는 존재형태로 분류)

1. 정형데이터  - 고정된 구조로 정해진 필드에 저장된 데이터를 의미 , 엑셀,csv, RDBMS 가 대표적

2. 비정형데이터(외부데이터) - 정해진 구조가 없는 데이터, 동영상, 소셜네트워크 댓글, 위치데이터등, 크기가 크고 복잡

3. 반정형데이터 - 데이터와 메타데이터, 스키마 등을 포함하는 데이터를 의미 , XML, HTML, JSON 이 대표적 

 

 

* 데이터 수집방법

* 데이터 유형에 따른 수집방법

유형 정형 데이터 비정형 데이터  반정형 데이터
방법 -ETL: 추출, 변환, 적재
-FTP: 파일 송수신 프로토콜
-API: 실시간 데이터 수신 인터페이스
-DBToDB: 데이터베이스간 동기화
-Rsync: 일대일 동기화
-Sqoop: RDBMS와 하둡간 데이터 전송
-크롤링: 웹사이트에서 데이터수집
-RSS: XML기반 프로토콜 활용
-Open API: 실시간 데이터 수신
-스크래파이: 파이썬 기반 크롤링
-아파치 카프카: 데용량 실시간 로그 처리
-센싱: 센서 데이터
-스트리밍: 미디어 실시간 수집
-플럼: 분산형 대량 로그 수집 기술
-스크라이브: 대량 실시간 로그 수집 기술
-척와: 대규모 분산 시스템 모니터링

1. 정형 데이터 수집 방식 및 기술: ETL, FTP, API, DBToDB, Rsync, Sqoop

ETL: 추출(Extract), 변환(Transform), 적재(Load)

데이터 조회 , 분석을 목적으로 적절한 구조로 추출, 변환, 적재하는 작업 기술로  데이터를 데이터 저장소인 데이터 웨어하우스 DW() 및 데이터 마트(DM)에 이동시키기위한 작업 및 기술

 


*데이터 웨어하우스(Data Warehouse)
 - DB 축적된 데이터를 공통 형식으로 변환해서 관리하는 저장소
 - 여기서 관리하는 데이터들은 시간의 흐름에 따라 변화하는 값을 유지한다


* 데이터 마트(Data Mart) 

 - DW에서 데이터를 꺼내 사용자에게 제공함
 - 특정 사용자가 관심을 가지고 있는 데이터를 담은 비교적 작은 규모의 데이터 웨어하우스(DW)
 - 재무/ 생산/ 운영 등과 같이 특정 조직의 특정 업무 분야에 초점을 맞추어 구축

* FTP: File Transfer Protocol, 파일 송수신 응용계층 통신 프로토콜

 - 원격지 시스템 간 파일 공유를 위한 서버-클라이언트 모델

 - TCP/IP 프로토콜을 기반으로 서버, 클라이언트 사이에서 파일 송수신

 -  Active FTP: 클라이언트가 포트를 알려주면 데이터 전송해주는 방식(서버가 자신의 20번 포트를 통해 클라이언트의 임의의 포트로 데이터를 전송해주는 방식 , 명령은 21번 포트, 데이터는 20번 포트 를 사용 

 - Passive FTP: 서버가 포트를 알려주면 클라인어트가 데이터 가져가는 방식(명령은 21번포트 , 데이터는 1024이후의 포트 사용)

 

* API: Application Programming Interface, 실시간 데이터 수신 기능을 제공하는 인터페이스 기술

솔루션 제조사 및 3rd party 소프트웨어로 제공되는 도구

* DBToDB: 데이터베이스 시스템 간 데이터 동기화 및 전송 기능

* Rsync: Remote Sync, 서버-클라이언트 방식, 수집 대상 시스템과 일대일로 파일 및 디렉터리를 동기화

* 스쿱(Sqoop): 커넥터를 사용하여 RDBMS와 하둡(HDFS) 간 데이터 전송 , 전송, 수집 등 모든 적재 과정이 자동화

 - 벌크 임포트 지원(전체 데이터베이스 또는 테이블을 한번에 전송)

 - 데이터 전송 병렬화

 - 직접입력 제공(RDB에 매핑해서 HBASE 와 HIVE에 직접 IMPORT)

 - 프로그래밍 방식의 데이터 인터렉션(자바 클래스 생성을 통한 데이터 상호작용 ) 

  -  Import(가져오기), Export(내보내기), Job(생성 및 실행) Metastore, Merge(데이터셋 병합)

 

2. 비정형 데이터 수집 방식 및 기술: 크롤링, RSS, Open API, 스크래파이, 아파치 카프카

* 크롤링(Crawling): 웹 사이트로부터 웹문서, 컨텐츠를 수집

* RSS(Rich Site Summary): 블로그 , 뉴스, 쇼핑몰등의 웹사이트에 게시된 새로운 글을 공유하기위해 XML 기반으로하는 정보를 배포하는 프로토콜을 활용하여 수집하는 기술

* Open API: 응용 프로그램을 통해 실시간 데이터 수신

* 스크래파이(Scrapy): Python 기반 비정형 데이터 수집 기술

 - 웹 사이트를 크롤링하여 구조화된 데이터 수집

 - 주요기능:

        - Spider : 크롤링 대상 웹사이트 및 웹페이지의 어떤부분을 스크래핑 할것인지를 명시하는기능

        - Selector: 웹페이지의 특정 HTML 요소를 선택하는 기능 (LXML 기반으로 제작가능)

        - Items : 웹페이지를 스크랩하여 저장할떄 사용되는 사용자 정의 자료 구조 

        - Pipelines: 스크래핑 결과물을 아이템형태로 구성할때 가공하거나 파일형태로 저장 제공기능

        - Settings: Spider와 Pipeline 을 동작시키기위한 세부설정

* 아파치 카프카(Apache Kafka): 대용량 실시간 로그 처리를 위한 분산 스트리밍 플랫폼

 - 레코드 스트림을 발행, 구독하는 방식(기존 메시징 시스템과 유사)

 - 특징: 신뢰성(메모리및 파일 큐 기반의 채널지원), 확장성 제공(Multi Agent, Consolidation, Fan Out Flow 방식으로 수평 확장 및 분산 처리 가능)

 - 주요 기능: 소스(Source-수집영역), 채널(Channael -소스와 싱크간 버퍼구간), 싱크(Sink-전달 및 저장), 인터프리터(Interpreter - 가공)

 

3. 반정형 데이터 수집 방식 및 기술: 센싱, 스트리밍, 플럼, 스크라이브, 척와

* 센싱(Sensing): 네트워크를 통해 센서데이터 수집& 활용

* 스트리밍(Streaming): 네트워크로 미디어 데이터를 실시간 수집(센서, 오디오, 비디오 등)

 

* 플럼/스크라이브/척와의 활용은 점차 증가하는중

* 플럼(Flume): 분산형 대용량 로그 수집 기술로 이벤트와 에이전트 활용

 - 발행/구독 모델: 메세지 큐와 유사한형태의 데이터큐를 사용, 풀(Pull) 방식으로 부하 감소, 고성능 기능 제공

 - 고가용성(High Availiability) 제공: 클러스터 구성, 분산 처리를 통해 고가용성 서비스 제공 가능

 - 파일 기반 저장방식: 데이터를 디스크에 순차 저장

 - 주요 기능: 소스(Source -이벤트를 전달하는 컨테이너, 소스,채널,싱크로 흐름제어), 채널(Channel - 이벤트 를 소스와 싱크로 전달 통로), 싱크(Sink -채널로부터 받은 이벤트 저장 및 전달)


* 풀(Pull)방식 - 사용자가 자신이 원하는 정보를 요청할 때, 서버에서 정보를 전송하는 기법
(푸시(Push) 방식은 반대로, 사용자가 요청하지 않아도 자동으로 원하는 정보를 제공하는 기법)

* 스크라이브(Scribe): 대용량 실시간 로그 수집 기술

 - 다수의 서버로부터 실시간 스트리밍 로그 데이터를 수집하여 분산 시스템에 저장

 - 다양성: 클라이언트 서버 타입에 상관없이 로그 수집 가능

 - 고가용성: 단일 중앙 서버 장애 → 다중 로컬 서버에서 저장

 - 단일 중앙 스크라이브 서버와 다수의 로컬 스크라이브 서버로 구성되어 안정성과 아파치 Thrift 기반 스크라이브 API를 활용하여 확장성을 제공

* 고가용성 (HA) - 서버와 네트워크 , 프로 그램의 정보시스템이 시스템의 장애에 대응해서 오랜기간동안 지속적으로 정상운영이 가능한상태를 만드는환경 

 

* 척와(Chukwa): 대규모 분산 시스템 모니터링을 위한 에이전트-컬렉터 구성의 데이터 수집 기술

 - 분산된 서버에서 에이전트 실행 → 컬렉터가 데이터 수집 → HDFS에 저장 및 실시간 분석 기능 제공

 - 특징: HDFS 연동, 실시간 분석, 청크(Chunk) 단위 처리 (어댑터가 데이터를 메타데이터가 포함된 청크단위로 전송)

 - 구성: 에이전트(데이터 수집, 페일오버기능으로 데이터유실방지), 컬렉터(데이터를 주기적으로 HDFS에 저장)

 - 데이터 처리: 아카이빙(Archiving, 시간 순서로 그룹핑,HDFS Sequence File 포멧으로 저장), 디먹스(Demux, 키-값 쌍으로 척와레코드 생성 및 파일로 저장)

 - 척와는 비정형, 반정형 데이터 수집 둘 다 사용

 

* 청크 (Chunk) - 파일이 나누어진 조각의 단위 

* 페일오버 (Fail Over) - 컴퓨터 서버, 시스템 네트워크 등에서 이상이 생겼을때 예비시스템으로 자동전환되는 기능 

 

* 시간 관점에 따른 수집 방법 : 실시간, 비실시간

  - 시간 관점 또는 활용 주기에 따라 분류한다

  - 실시간 데이터: 생성된 이후 수 초 ~ 수 분 이내에 처리되어야 의미있는 현재 데이터

  - 센서 데이터, 알람, 시스템 로그, 네트워크 장비 로그, 보안 장비 로그

  -  비실시간 데이터: 생성된 이후 수 시간 or 수 주 이후에 처리되어야 의미있는 과거 데이터

  - 통계, 웹 로그, 서비스 로그, 구매 정보, 디지털 헬스케어 정보

 

* 저장 형태 관점

 - 파일, 데이터베이스, 콘텐츠, 스트림 데이터

 - 파일 데이터: 파일 형식으로 저장, 크기가 대용량 or 개수가 다수인 데이터

 - 데이터베이스 데이터: 데이터 종류 or 성격에 따라 데이터베이스의 컬럼 또는 테이블 등에 저장된 데이터

                                      관계형 데이터베이스(RDBMS), NoSQL, 인메모리 데이터베이스

 - 콘텐츠 데이터: 개별적 객체로 구분될 수 있는 미디어 데이터

                           텍스트, 이미지, 오디오, 비디오 등

 - 스트림 데이터: 네트워크를 통해 실시간 전송되는 데이터

                           센서 데이터, HTTP 트랜잭션, 알람 등

 

 

 

* 데이터 처리기술: 필터링/ 변환/ 정제/ 통합/ 축소

기술 필터링 변환 정제 통합 축소
설명 목적에 맞지 않는 정보
- 보정/ 삭제/ 중복성 등
일관성 있는 형식
- 평활화/집계/정규화 등
불일치성 교정
- 결측값/ 잡음 처리 등
출처 다름, 상호연관성
있는 데이터 결합
불필요한 데이터 축소
고유한 특성은 손상 X

 

* 데이터 수집 프로세스: 수집데이터 도출 - 목록작성 - 소유기관 파악&협의 - 데이터 유형분류&확인
                                                   - 수집기술 선정 - 수집주기 결정 - 수집실행

* 수집 데이터의 대상 :  내부 데이터 - 서비스/ 네트워크/ 마케팅  ,  외부 데이터 - 소셜/ 네트워크/ 공공

 

유형 내부 데이터 - 주로 정형 데이터 외부 데이터 - 주로 비정형 데이터
대상 서비스 네트워크 마케팅 소셜 네트워크 공공
종류 - SCM/ ERP/ CRM
- 인증/ 거래시스템
- 포털 등
- 백본/ 방화벽
- IPS/ IDS
- 스위치 등
- VOC 접수 데이터
- 고객 포털 시스템
- SNS
- 게시판
- 커뮤니티 등
- 센서 데이터
- 장비간 발생로그
   (M2M) 등
정부에서 공개한
공공 데이터
(LOD)

* ERP - 전사적자원관리 - 회사의 모든정보 , 프로세스 통합 관리 시스템

* SCM - 공급망관리  - 물류, 유통, 원재료 수급에서 생산까지 관리시스템

* CRM - 고객관리 - 고객 중심 자원관리, 마케팅관리 시스템

 

 

* 데이터 형태에 따른 분류

 - 정성적: 언어, 문자 형태, 저장, 검색, 분석에 많은 비용 소모

 - 정량적: 수치, 도형, 기호 형태, 정형화된 데이터이므로 비용 소모 적음

 

* 수집대상 목록 작성시 검토할 사항 

-  수집가능성, 보안문제, 수집비용, 정확성, 난이도 고려

 

 

* 척도 - 척도란 수집된 데이터가 다른 데이터와 구분하기위한 특성을 의미

* 데이터는 측정방법에따라 질적자료와 양적자료 로 구분

질적자료 - 명목척도와 순위척도

양적자료 - 구간척도와 비율척도로 구분

데이터 속성
명목형(범주형)
Nominal
명사형/ 이름만 의미부여
크기&순서 상관없음
순서형(범주형)
Ordinal
순서에 의미부여O
(ex. 만족, 보통, 불만족)
이산형(수치형)
Discrete
변수값을 하나하나
개수로 셀 수 있는 경우
연속형(수치형)
Continuous
변수가 구간내 모든값을
가질 수 있는 경우
데이터 측정척도
명목척도 순위가 없는 특정범주에 존재하는 척도
기호&숫자 부여
=,!= 의 연산가능 
성별, 혈액형, 거주지역 
서열척도
순서(순위)척도
분류&서열 순서가있는 척도 
비계량적 변수 관측&비교
숫자크기에 의미
<,> 비교연산가능 
석차,소득수준,제품평점, 아이돌 선호도 등
등간척도
간격(구간)척도
동일 간격화/ 크기간 차이 비교
순서,순위는 의미 없다
비계량적 변수를 정량적 측정
절대적 원점이 존재하지않는다, (0이라고 해서 값이 없다고 할수없음)
(+.-)가감연산가능 
온도,지수 ,점수
비율척도 비율계산가능, 절대적 원점이 존재
수치형변수 측정시 주로 사용 
사칙연산및 크기 비교 모두가능 
(ex. 나이, 키, 거리, 소득 등)

*
속성 값을 연산했을 때 의미 있으면 비율 척도, 의미 없으면 등간척도

 

 

* 데이터 변환 기술(데이터 전처리작업) - 삭제는 없다!

방법 평활화 집계 일반화 정규화 속성 범주화 데이터축소, 차원축소
특징 - 잡음(이상치) 제거
- 추세 벗어나는 값 변환
-구간화 군집화를 통해 값변환
- 그룹화연산을이용하여 데이터 요약
- 속성 하나로 줄임
- 스케일 변경
- 특정 구간에
   분포하도록

- 범용적 데이터에 적합
- 정해진 구간내에 분포
- 최소-최대/ Z-score
- 소수 스케일링
- 데이터 통합을 위해 새로운 속성/특징을 만드는 방법 -데이터통합을위해 사위레벨개념의 속성이나 특성을 이용해 일반화  -데이터축소 :같은정보량을 가지면서 데이터 크기를 줄임 
- 차원축소 :데이터 차원의 크기를 축소

* 정규화 기법 3가지

  • 최소-최대 정규화: 최솟값 0, 최댓값 1, 다른 값을은 0과 1사이의 값으로 변환
  • Z-스코어 정규화: 데이터가 평균 대비 몇 표준편차만큼 떨어져 있는지 점수화
    • 이상값 문제를 피하는 정규화 전략
  • 소수 스케일링: 특성값의 소수점을 이동하여 데이터 크기 조정

 

 

*데이터 비식별화

: 개인정보 일부/전부를 삭제/대체하여, 다른 정보와 결합해도 특정 개인을 식별하기 어렵도록 하는 조치*

데이터 비식별화 처리기법: 가명처리/ 총계처리/ 데이터값 삭제/ 범주화/ 데이터 마스킹

* 데이터 품질 특성 - 데이터 유효성과 활용성

  • 데이터 유효성: 정확성, 일관성으로 정의함
    • 데이터 정확성: 정확성, 사실성, 적합성, 필수성, 연관성
    • 데이터 일관성: 정합성, 일치성, 무결성
  • 데이터 활용성: 유용성, 접근성, 적시성, 보안성으로 정의함
    • 데이터 유용성: 충분성, 유연성, 사용성, 추적성
    • 데이터 보안성: 보호성, 책임성, 안정성
 

* 빅데이터 품질요소와 품질전략 

요소 전략
정확성(Accuracy) 데이터 사용 목적에 따라 데이터 정확성의 기준을 다르게 적용

완전성(Completeness) 필요한 데이터의 완전한 확보 보다는 필요한 데이터를 식별하는 수준으로 적용가능
적시성(Timeliness) 소멸성이 가낭 데이터에 대해 어느정도의 품질기준을 적용할것인지 결정
일관성(Consistency) 같은 데이터 라고 할지라도 사용목적에 따라 달라지는 데이터 수집 기준때문에 데이터의 의미가 달라질수 있음 

 

* 데이터 변환후 품질검증 프로세스 

   * 메타데이터 : 데이터에 관한 구조화된 데이터로서 다른 데이터를 설명해주는 데이터

  • 수집 데이터 분석 프로세스: 빅데이터 수집 → 메타데이터 수집 → 메타데이터 분석 → 데이터 속성 분석
    • 메타데이터 수집: 테이블 정의서, 컬럼 정의서, 도메인 정의서, 데이터 사전, ERD(ER-Diagram) 등
    • 메타데이터를 통한 데이터 속성(유효성) 분석 방안
      • 누락값 분석: NULL, 공백, 숫자 0의 분포 확인
      • 값의 허용 범위 분석: 해당 속성의 도메인 유형에 따라서 범위 결정
      • 허용 값 목록 분석: 허용 값 목록, 집합에 포함되지 않는 값을 발견
      • 문자열 패턴 분석: 컬럼 속성값의 특성을 문자열로 도식화 → 특성을 파악하기 쉽게 해 놓은 표현 방법
      • 날짜 유형 분석: DATETIME 유형, 문자형 날짜 유형을 활용
      • 유일 값 분석: 유일해야 하는 컬럼에 중복이 있는지 확인
      • 구조 분석: 관계 분석, 참조 무결성 분석, 구조 무결성 분석기 등을 활용하여 구조 결함 발견

* 데이터 프로파일링을 통한 품질 검증 기법 

* 데이터 프로 파일링: 데이터 현황 분석을 위한 자료수집을 통해 잠재적 오류 징후를 발견하는 방법 

* 절차  : 메타 데이터 수집 및 분석 -> 대상및 유형 선정 -> 프로파일링 수행 -> 프로파일링 결과 리뷰 -> 프로파일링 결과 종합

 

* 품질 검증 기준

- 복합성, 완전성, 유용성, 시간적요소, 일관성 , 타당성 , 정확성

  • 복잡성 기준 정의: 데이터 구조, 형식, 자료, 계층 측면에서 정의함
  • 완정성 기준 정의: 메타데이터, 개체 단위, 변수 정의 등을 기준으로 → 질이 충분하고 완전한가
  • 유용성 기준 정의: 처리 용이성, 자료 크기, 하드웨어 및 소프트웨어의 제약 사항 측면에서 정의함
  • 시간적 요소 및 일관성 기준 정의: 시간적 요소, 일관성, 타당성, 정확성을 기준으로 품질 관리
    • 시간적 요소: 수집 기간, 수집 방법의 변화가 과거 자료 사용에 제약을 주는지 여부 등

 

*빅데이터 적재 소프트웨어 아키텍처 

단계 수집 적재 및 저장 분석 활용
  - ETL
- 크롤러
- 연계/수집 플랫폼
데이터 구성 플랫폼
- RDB저장소
- NoSQL 저장소
- Object 저장소
빅데이터 분석 모델/플랫폼 - 데이터 시각화
- 데이터 활용 플랫폼
- Open-API 서비스

 

* 데이터 적재: 빅데이터 유형, 실시간 처리 여부에 따라 RDBMS, HDFS, NoSQL 저장 시스템에 적재함

* 데이터 적재 도구: 플루언티드/ 플럼/ 스크라이브/ 로그스태시

도구 플루언티드(Fluentd) 플럼(Flume) 스크라이브(Scribe) 로그스태시(Logstash)
설명  - 크로스 플랫폼 오픈소스
데이터 수집 소프트웨어
 - 각 서버에서 수집→중앙 전송
 - 플루언티드가 로그수집에이전트 역할만 수행하는 가장 간단한 구조

-대용량 로그 수집/집계/이동
-실시간 스트리밍
-이벤트-에이전트 활용
-대용량 로그 수집
-실시간 스트리밍
-분산시스템에 데이터 저장
-모든 로그 정보를 수집하여
하나의 저장소에
출력해주는 시스템

 

* 빅데이터 저장 시스템: 대용량 데이터 집합을 저장&관리하는 시스템

* 빅데이터 저장기술:
분산 파일 시스템/ 데이터베이스 클러스터/ NoSQL/ 병렬 DBMS/ 네트워크 구성/ 클라우드 파일 저장시스템

 

기술 분산 파일시스템 데이터베이스
클러스터
NoSQL 병렬 DBMS 네트워크 구성
저장 시스템
클라우드 파일
저장 시스템
설명 네트워크를 통해
여러 호스트 컴퓨터
파일에 접근
하나의 DB를
여러개 서버상
분산하여 구축
-데이터파티셔닝이용
스키마X 조인X
수평적 확장이
가능한 DBMS
특성 : BASE
다수의
마이크로프로세서
동시에 여러개 처리
다른 저장장치
데이터서버 하나에
연결하여 저장
클라우드컴퓨팅환경
분산 파일시스템
종류 - GFS
- HDFS
- 러스터
- 오라클 RAC
- IBM DB2 ICE
- MSSQL
- MySQL
- 구글 빅테이블
- HBase
- SimpleDB
- SSDS
- Cloudata
- Cassandra
- VoltDB
- SAP HANA
- Verica
- Greenplum
- Netezza
- SAN
- NAS
- Amazon S3
- OpenStack Swift

 

 

분산 파일 시스템: 네트워크를 통해 여러 호스트 파일에 접근

종류 구글 파일 시스템 (GFS) 하둡 분산 파일 시스템 (HDFS) 러스터 (Lustre)
특징 고정된크기의 청크 (64MB)들을 파일로나눔
청크&복제본을 분산 저장
파일크기를 블록 (128MB)로 나누어분산서버에 저장, 64에서 128MB로 증가
분산된 서버에 테라,페타 바이트 이상의  대용량 파일 저장
객체기반 클러스터 파일 시스템
계층화된 모듈 구조
구조 클라이언트가 마스터에게 파일 요정 → 마스터는 청크 서버에 요청 → 청크 서버는 클라이언트에게 청크 데이터 전송
- 네임노드: 마스터 역할, 모든 메타데이터 관리, 데이터노드들로부터 하트비트를 받아 상태 체크
- 보조 네임노드: 상태 모니터링 보조함
- 데이터노드: 슬레이브 역할, 데이터 입출력 요청, 데이터 유실방지를 위해 블록을 3중 복제
 - 클라이언트 , 메타데이터 서버, 객체저장서버들로 구성
-TCP/IP, 인피니티 밴드(무한대역폭)같은 네트워크 지원


 

 

* NoSQL 특징 -BASE:

 -  Basically Available - 언제든지 데이터에 접근 가능, 항상 가용성중시

 - Soft-State - 노드 상태는 외부 정보로 결정됨, 특정시점에서는 일관성이 보장되지않음

 -  Eventually Consistency -  일정시간이 지나면 데이터 일관성 유지

 

 

* NoSQL의 유형: 저장되는 데이터 구조에 따라서 나눔

Key-Value Store Column Family Data Store Document Store Graph Store
유니크한 키 하나에 값 하나
get/put/delete로 처리
키 안에 (Column, Value) 조합
테이블기반,조인미지원 컬럼기반
데이터 타입이 Document
document타입이 xml,json,yml
그래프로 데이터를 표현
시멘틱웹과 온톨로지분야에서활용
Redis, DynamoDB HBase, Cassandra MongoDB, Couchbase Neo4j, AllegroGraph

 

* CAP 이론: NoSQL은 CAP 이론을 기반으로 함 
분산 컴퓨팅 환경은 Availability, Consistency, Partition Tolerance 3가지 특징 중 2가지만 만족할 수 있다는 이론

 

Consistency Availability Partition Tolerance
일관성 유효성 분산 가능
모든 사용자에게
같은 시간에 같은 데이터 제공
모든 클라이언트가
읽기&쓰기 가능해야 함
물리적 네트워크 분산환경에서시스템이 원활하게 동작해야 함
네트워크전송중 데이터손실상황이 생겨도 정상적으로 동작해야함

* ACID - NoSQL 에서 ACID요건을 완화하거나 제약하는 특징이있다 

 - 트랜잰션의 특징인 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation) , 내구성(Durability)을 뜻한다.

 

* 빅데이터 저장 제품을 검토하기 위한 사용자 요구사항 분석 절차: 요구사항 수집 - 분석 - 명세 - 검증

* 저장방식 선정시 고려요소: 저장기술의 기능성, 분석방식 및 환경, 분석 대상 데이터 유형, 기존 시스템과의 연계

 

 

* 데이터 웨어하우스에서 데이터 처리 프로세스 

1.ETL - 데이터 원천으로 부터 테이터를 추출 변환하여 적재하는 작업을 하며 데이터 웨어하우스로 보내기전에 수행 

2. ODS - 데이터에 대한 추가 작업을 위해 다양한 데이터 원천 들로 부터 데이터를 추출및 통합한 데이터 베이스

            - ODS 내 데이터는 비지니스 지원을 위해 타시스템으로 이관되거나, 보고서 생성을 위해 데이터 웨어하우스로 이                관된다

3.CDC - 데이터 백업이나 통합 작업을 할경우 최근 변경된 데이터를 대상으로 다른시스템으로 이동하는 처리기술 

            - 실시간 백업과 데이터 통합이 가능하여 24시간 운영 하는 업무에 활용

 

* ETL과 CDC 비교 

* 공통된 목적은 원천 데이터를 DW, DM으로 적재

* ETL 특징 - 실시간이 아닌 정해진 시점의 완료된 데이터를 적재

* CDC 특징 - 실시간으로 적재 

 

 

* 데이터 웨어하우스 특징 - 주체지향적, 통합적, 시계열적, 비휘발적

* 데이터 레이크 (Data Lake)

- 모든 가공되지않은 다양한 데이터를 저장하는 시스템 , 데이터 자장소

- 스키마와 상관없이 저장가능

 - 데이터 사이언스에서 활용 

728x90
반응형