← 목록으로
✏️ Study

데이터베이스 설계 | 15. 데이터 과학과 빅데이터

2024년 6월 3일

1. 데이터 과학의 필요성과 개념

  • 필요성
    • 빅데이터, 사물 인터넷, 인공지능 : 4차 산업 혁명 시대 핵심 기술 용어들의 공통점은 그 중심에 데이터가 있음
    • 분류, 검색 → 방대한 데이터에 숨겨진 규칙과 패턴을 찾아 문제 해결에 활용, 예측하여 미리 준비
  • 개념
    • 데이터를 수집한 후 분석을 통해 데이터를 정확히 이해(정보)하고 의미를 부여함으로써 거기에 숨겨진 새로운 지식을 발견한 후 이를 문제 해결에 활용(지혜)하는 모든 과정의 활동을 의미
    • 데이터 : 관찰하거나 측정하여 수집한 사실이나 값
    • 정보 : 데이터를 상황에 대한 이해를 바탕으로 목적에 맞게 가공한 것
    • 지식 : 규칙과 패턴을 통해 찾아낸 의미 있고 유용한 정보
    • 지혜 : 지식에 통찰력을 더해 새롭고 창의적인 아이디어를 도출한 것

2. 빅데이터

  • (3V, 5V, 7V)
    • 크기(Volume) : 수집 TB(terabyte) 이상
    • 속도(Velocity) : 실시간, 스트림 처리
    • 다양성(Variety) : 정형(테이블), 반정형(XML), 비정형(SNS)
    • 정확성(Veracity) : 정확하고 신뢰할 수 있어야 함
    • 가치(Value) : 문제 해결을 위한 의사결정에 활용될 만한 가치
    • 시각화(Visualization) : 이해하기 쉽게 그림이나 도표로 시각화
    • 가변성(Variability) : 가변성을 인식하고 수집과 분석 작업에서 데이터의 원래 의미가 그대로 반영될 수 있도록 노력해야 함
  • 저장 기술
    • 하둡(Hadoop) : 대용량 데이터를 분산 처리할 수 있는 자바 기반의 프레임워크 : 분산 파일 시스템인 HDFS(Hadoop Distributed File System)에 데이터를 저장하고, 분산 처리 시스템인 Map Reduce를 이용해 데이터를 처리 : 오픈 소스이므로 비용이 적게 들고, 여러 대의 서버에 데이터를 분산해서 저장하므로 속도가 빠름
    • NoSQL(Not only SQL) : 관계 데이터베이스의 일관성보다는 가용성과 확장성에 중점을 둠 : 비정형 데이터를 저장하기 위해 유연한 데이터 모델을 지원 : 확장성이 중요한 클러스터 환경에 적합 : 저렴한 비용으로 분산 처리와 병렬 처리 가능
      • 특징 : 일관성이 중요하고 조인과 같은 복잡한 질의 처리가 필요한 용도라면 관계 데이터베이스를 사용하는 것이 적합 : 대용량의 비정형 데이터에 대해 삽입 위주의 데이터를 저장하고 관리하는 용도라면 NoSQL이 적합

        구분관계 데이터베이스NoSQL
        처리 데이터정형 데이터정형 데이터, 비정형(반정형 포함)데이터
        대용량 데이터대용량 처리 시 성능 저하대용량 데이터 처리 지원
        스키마미리 정해진 스키마가 존재스키마가 없거나 변경이 자유로움
        트랜잭션트랜잭션을 통해 일관성 유지를 보장함트랜잭션을 지원하지 않아 일관성 유지를 보장하기 어려움
        검색 기능조인 등의 복잡한 검색 기능 제공단순한 데이터 검색 기능 제공
        확장성클러스터 환경에 적합하지 않음클러스터 환경에 적합함
        라이선스고가의 라이선스 비용오픈 소스
        대표적 사례Oracle, MySQL, MS SQL 서버 등카산드라, 마리아 DB, 몽고 DB, H 베이스 등
  • 분석 기술
    • 데이터 마이닝(Data Mining)
      • 대량의 데이터에서 실제로 존재하지 않는 정보를 얻어내는 것
      • 고객 관련 정보를 토대로 미래의 구매 형태를 예측하거나 변수 간 인과 관계를 분석하는 마케팅 기법
      • 고객 관계 관리 CRM(Customer Relationship Management)
      • 연관 분석(Association Analysis) : 하나의 거래나 사건에 포함되어 있는 품목들의 상호 연관성을 발견하는 것
        • 연관성은 어떤 아이템 집합의 존재가 다른 아이템 집합의 존재를 암시하는 것을 의미
        • Apriori 알고리즘
        • 지지도(Support) : 전체 거래 N중에서 X와 Y를 동시에 포함하는 거래가 어느 정도인가?
          • S=XYNS = \frac{|X \cap Y|}{|N|} 연관 규칙 X → Y는 지지도 S를 가짐(N : 전체 트랜잭션의 개수)
        • 신뢰도(Confidence) : X를 포함하는 거래 중 X와 Y를 동시에 포함하는 거래가 어느 정도인가?
          • C=XYXC = \frac{|X \cap Y|}{|X|} 연관 규칙 X → Y는 신뢰도 C를 가짐
      • 군집 분석(Cluster Analysis) : 의견이 유사한 사용자들을 발견하고, 특정한 사용자의 특정한 아이템에 대한 의견을 유사 그룹의 의견을 참조하여 예측해 냄
        • 장점
          • 아이템에 대한 사전 분류나 파악에 의존하기보다 사용자들의 의견 참조
          • 사용자가 예상하지 않았지만 자신의 취향에 맞는 새로운 아이템을 발견할 가능성이 있음 → 시스템에서 자동화될 가능성이 매우 높음
      • 분류 분석(Classification Analysis) : 새로운 데이터가 어떤 그룹(등급)에 속하는지를 판단하는데 사용되는 분석 기법
        • 군집 분석과 달리 미리 정의된 기준에 따라 기존 데이터의 그룹이 나뉘어져 있음
  • 표현 기술
    • 데이터 시각화 개념 : 이해하기 쉽게 시각적으로 정보를 제시하여 분석에 활용, 시각화 전에는 보이지 않던 규칙이나 패턴 찾는데도 활용
    • 데이터 시각화 방법
      • 시간 시각화 : 시간의 흐름에 따른 데이터의 변화나 경향을 표현
      • 분포 시각화 : 분류 기준에 따라 데이터의 분포 상태를 표현
      • 관계 시각화 : 데이터간의 상관 관계를 표현
      • 비교 시각화 : 여러 데이터 값의 유사성이나 차이를 표현
      • 공간 시각화 : 지도 위에 장소나 지역에 따른 데이터 분포를 표현

3. 데이터베이스 응용

  • 데이터 웨어 하우스
    • 조직이나 기업체의 중심이 되는 주요 업무, 시스템에서 추출되어 새로이 생성된 데이터베이스
    • 효율적인 의사 결정 지원 시스템을 지원하는 데이터의 집합체, 의사 결정을 위해 현재 데이터와 과거 데이터 함께 유지
    • 특정 스키마를 기준으로 데이터를 정제하여 저장, 활용
    • 저장 시에 스키마를 충족해야 해서 데이터 정제 시간이 오래 걸리고 비용이 많이 듬 → 빠른 데이터 수집에 어려움
    • 데이터 관리와 거버넌스가 명확
    • 특징
      • 주제 지향성(subject-orientated) : 최고 경영자, 데이터 분석가가 사용하므로 이해하기 쉬운 형태로 제공
      • 통합성(integrated) : 여러 데이터베이스에서 추출한 데이터를 통합하여 저장함으로써 의사 결정에 필요한 분석 및 비교 작업 지원
      • 시계열성(time-variant) : 과거, 현재의 데이터를 동시에 유지함으로써 데이터 간의 시간적 관계, 동혁 분석
      • 비휘발성(nonvolatile) : 검색 작업 위주로 삽입, 삭제, 갱신 이상이 발생할 염려가 없어 검색의 효율성을 고려해 설계
  • 데이터 호수(Data Lake) : 다양한 환경에서 수집한 모든 데이터 → 가공되지 않은 원래의 형태로 저장, 공유
    • 저장 : 가공되지 않은 원래의 형태로 저장
    • 활용 : 데이터 스키마를 정의 → 필요한 형태로 변환하여 사용
    • 일단 저장 → 그 후에 데이터 활용을 고민
    • 대용량 실시간 데이터를 빠르게 저장하는 데 유리
    • 범용 장비로 구축 가능 → 구축 비용이 저렴
    • 데이터 관리가 어렵고, 지속적인 유지 관리를 하지 않으면 쓸모없는 데이터가 많아지게 됨
  • 데이터 마트(Data Mart)
    • 데이터 웨어하우스의 축소판
    • 데이터의 한 부분에서 사용자가 관심을 갖는 데이터들을 담은 작은 규모의 데이터 웨어하우스
    • 대량의 다양한 정보를 사용자의 요구에 따라 체계적으로 분석하여 기업의 경영 활동을 돕기 위한 시스템
  • 데이터 튜닝(Data Tuning)
    • 데이터베이스의 성능 향상과 사용자의 요구에 따라 빠른 검색을 통한 신속한 서비스 제공, 저장 공간의 효율을 향상
    • 데이터베이스 시스템을 최적화하기 위해 재조정하는 것
    • 데이터 검색 시 자료가 저장된 블록의 이동과 접근 횟수를 줄일 수 있도록 저장 공간을 조정하여 신속한 검색이 이뤄짐
    • SQL 명령어 작성 시 쉽게 이해할 수 있도록 표준화된 형태로 작성
    • 트랜잭션의 무결성을 유지하면서 정보 공유를 위해 적정한 수준의 Locking 기법을 사용
  • 멀티미디어 DBMS
    • 멀티미디어 데이터의 응용 분야가 다양해지면서 → 멀티 미디어 데이터를 관리하고 질의를 효율적으로 처리하는 멀티 미디어 데이터베이스 시스템의 필요성 증가
    • 특징
      • 대용량 데이터 : 멀티 미디어 데이터의 크기는 수 킬로 바이트에서 수십 메가 바이트 이상 → 압축하여 별도의 저장 공간을 구성하여 관리
      • 복잡한 검색 방법
        • 설명 기반 검색 : 멀티 미디어 데이터의 특성을 나타내는 키워드, 자세한 설명 등을 함께 저장해 검색에 이용
        • 내용 기반 검색 : 특정 객체를 포함한 멀티 미디어 데이터 검색
        • 단점
          • 대용량 멀티 미디어 데이터 처리에 적합 X
          • 설명 작성자의 주관적인 관점이 반영되어 같은 멀티 미디어 데이터에 대한 설명이 달라질 수 있음
        • 별도 기술 필요 : 멀티 미디어 데이터가 포함된 내용에 대한 정보를 추출해 DB에 저장하는 기술
          • 멀티 미디어 데이터용 질의 처리 기법
      • 복잡한 구조
        • 원시 데이터 : 텍스트, 그래픽, 이미지, 오디오, 비디오 등 기본 타입의 데이터
        • 서술 데이터 : 멀티 미디어 데이터를 검색할 때 사용되는 것
        • 등록 데이터 : 멀티 미디어 데이터의 특성과 필요한 정보를 별도로 추출한 데이터
        • 멀티 미디어 데이터의 복잡한 관계성을 표현하고 관리할 수 있는 기술이 필요
  • 모바일 DBMS
    • 다양한 모바일 기기를 이용하여 현장 업무에서 발생한 데이터를 가공 후, 동기화 기능을 통해 중앙 서버로 전송하는 능력을 갖춘 데이터베이스 관리 시스템
    • 모바일 기기는 컴퓨터에 비해 낮은 CPU 성능과 자원 → 모바일 기기에 적합한작은 크기의 DBMS가 필요
    • 특징
      • 저사양 기기에 탑재 가능
      • 내장형(Embedded) 데이터베이스
      • 서버 측 데이터베이스의 복제 및 동기화 기능
    • 동작 과정
      • 최초 접속 시 동기화 가능 여부 및 기본 SW 다운로드 및 설치 → 클라이언트와 서버는 데이터를 독립적으로 변경 → 수정된 복사본을 전송 → 수정본의 상호적용 및 동기화
    • 종류 : CloudScape, DB2 Everyplace, ASA, PointBase Mobile Edition, SQLite
      • SQLite : 대표적인 오픈 소스 파일 DB, 안정적이며 크로스 플랫폼 지원 → 모바일 기기에 적합