Computer Science/etc

[빅데이터 분석기사] 실기 요약본 (1) - 빅데이터 분석 기획

비소_ 2022. 6. 24.

제가 주관적으로 중요한 것, 헷갈리는 것 위주로 정리하다보니 중간중간 빠진 내용도 있습니다.

수제비 2022 - 빅데이터분석기사 실기 도서를 참고하여 정리했습니다.


하둡 에코시스템

1. 데이터 수집

  1. 척와 : 대규모 분산 시스템 모니터링, 에이전트/컬렉터로 수집, HDFS에 저장
  2. 플럼 : 대용량 로그 데이터 수집/집계/저장, 이벤트/에이전트 활용
  3. 스크라이브 : 대용량 실시간 로그 수집 시스템, HDFS 외에 다양한 저장소에 저장
  4. 스쿱 : 대용량 데이터 전송 시스템, 커넥터를 이용해 RDBMS ↔ HDFS 전송
  5. 히호 : 대용량 데이터 전송 솔루션, SQL 지정가능, JDBC 지원
  6. 아파치 카프카 : 실시간 로그 처리, 메시징 시스템과 유사, 분산 스트리밍 플랫폼 기술

2. 데이터 저장

  1. HDFS : 대용량 파일을 분산된 서버에 저장, 블록 구조
  2. HBase : 컬럼 기반 NoSQL, 실시간 랜덤 조회 및 업데이트 가능
  3. 쿠두 : 아파치 하둡 에코 시스템을 위한 컬럼 기반 스토리지

3. 분산 데이터 배치 처리

  1. MapReduce - (Key, Value) 쌍으로 구성해, Map-Shuffle-Reduce 순으로 병렬 처리

4. 리소스 관리

  1.  Yarn : 분산 클러스터 리소스 관리 플랫폼, 리소스 관리와 컴포넌트 처리를 분리

5. 데이터 분석/처리

  1. 피그 : 대용량 데이터 집합을 분석하기 위한 플랫폼, 맵리듀스 API를 단순화, SQL과 유사
  2. 머하웃 : ML 및 데이터 마이닝 알고리즘을 구현한 시스템
  3. 아파치 스파크 : 인메모리 분산 처리 시스템, 실시간 데이터 처리 가능
  4. 임팔라 : 실시간 SQL 질의 시스템, 맵리듀스 사용X, 인메모리 엔진사용, HiveQL 사용
  5. 프레스토 : 대화형 질의 처리 시스템, 분산된 SQL 쿼리 엔진 사용, 메모리 기반 처리
  6. 하이브 : DW 솔루션, HiveQL을 통해 내부적으로 맵리듀스로 변환되어 사용
  7. 타조 : SQL 형태 명령을 통해 분산 분석 작업을 지원하는 대용량 DW

6. 하둡 관리

  1. 우지 : 자바 WAS, 워크플로우 및 코디네이터 시스템
  2. 주키퍼 : 분산 코디네이션, 로드밸런싱, 동기화를 통한 안정성 보장

데이터 수집 방식 및 기술

  1. ETL : 데이터를 DW/DM으로 이동시키기 위해 추출/변환/적재하는 기술
  2. 스크래파이 : 파이썬기반 앱프레임워크, 웹 사이트를 크롤링하여 구조화된 데이터 수집
  3. 크롤링 : 다양한 웹 사이트로부터 웹 문서 및 콘텐츠 수집
  4. RSS : XML기반으로 정보를 배포하는 프로토콜 활용
  5. API : 시스템 간 연동을 통해 데이터를 수신할 수 있는 기능을 제공하는 기술
  6. Rsync : 서버/클라이언트 방식으로 로컬 또는 원격 대상 시스템과 1:1로 동기화
  7. 스트리밍 : 미디어 데이터를 실시간으로 수집하는 기술
  8. CEP : 복잡한 이벤트를 실시간으로 추출하여 대응되는 액션 수행
  9. EAI : 기업에서 운영되는 서로 다른 앱 연계/통합을 가능하게 해주는 연계 기술
  10. CDC : 데이터를 다른 시스템으로 이동하는 처리 기술
  11. ODS : 원천들로부터 데이터를 추출 및 통합한 DB, 타 시스템으로 이관되거나, DW로 이관

데이터 유형

구조 관점

  1. 정형 데이터 : 스키마 형태, 값과 형식이 일관됨
  2. 반정형 데이터 : 스키마 형태, 일관성 X, Node 형태의 구조
  3. 비정형 데이터 : 스키마X

시간 관점

  1. 실시간 데이터 : 수 초 이내에 처리
  2. 비실시간 데이터 : 시간 상관X

저장 형태 관점

  1. 파일 : 파일 시스템에 저장되는 데이터
  2. DB 데이터 : 컬럼 또는 테이블 등에 저장된 데이터
  3. 콘텐츠 데이터 : 데이터 객체로 구분될 수 있는 미디어 데이터
  4. 스트림 데이터 : 센서 데이터, 트랜잭션과 같이 실시간으로 전송되는 데이터

데이터 변환기술

  1. 평활화 : 노이즈를 제거하기 위해 이상값을 변환하는 기법. ex) 구간화, 군집화
  2. 집계 : 데이터를 요약. ex) 데이터를 일별/월별로 총합 계산
  3. 일반화 : 특정 구간에 분포하는 값으로 스케일링 (범위 상관X)
  4. 정규화 : 특정 구간으로 스케일링 (minMax : 0~1, Z-score : -1 ~ 1)
  5. 속성 생성 : 데이터 통합을 위해 새로운 속성 생성

데이터 품질 검증

  1. 메타데이터를 통한 품질 검증
  2. 정규 표현식을 통한 품질 검증
  3. 데이터 프로파일링을 통한 품질 검증
데이터 프로파일링
: 잠재적 오류 징후를 발견하는 방법

데이터 비식별화 처리 기법

데이터 비식별화

: 특정 개인을 식별할 수 없도록 개인 정보를 변환

  1. 가명처리 : 직접 식별할 수 없는 다른 값으로 대체, 변형 수준이 낮음
  2. 총계처리 : 통곗값 적용, 정밀분석 어려움, 수량이 적을 경우 예측 가능
  3. 데이터 삭제 : 특정 데이터값 삭제, 다양성/유효성/신뢰성 저하
  4. 범주화 : 단일 정보를 대푯값으로 변환 or 범위화, 다양한 분석 가능. ex) 랜덤 올림, 범위
  5. 데이터 마스킹 : 전체 또는 부분적으로 대체 값으로 변환

개인 정보 익명 처리 기법

  1. 가명 : 가명처리와 동일
  2. 일반화 : 일반화된 값으로 대체(범주화 비슷)
  3. 섭동 : 동일한 확률적 정보를 가지는 변형된 값에 대해 원래 데이터를 대체
  4. 치환 : 속성값을 수정하지 않고, 레코드 간 속성값의 위치를 바꿈

프라이버시 보호 모델

  1. k-익명성 : 전체 집합에서 같은 값이 적어도 k개 이상, 연결 공격 취약점 방지
  2. l-다양성 : 동질 집합에서 적어도 l개의 서로 다른 정보를 가져야함
  3. t-근접성 : 특정 정보의 분포와 전체 분포가 t 이하의 차이를 보여야함
  4. m-유일성 : 원본 데이터와 동일한 속성값의 조합이 비식별 데이터에 최소 m개 이상 존재

댓글