데이터 시각화

Yuno·2025년 5월 24일

데이터 사이언스

목록 보기
23/25

1️⃣ 데이터 시각화(Data Visualization)

  • 정의
    • 데이터를 그래프, 차트, 색상, 도형 등의 시각적 요소로 표현하여 정보나 추세를 쉽게 이해할 수 있게 하는 기법.
  • 필요성
    • 복잡한 데이터를 직관적이고 빠르게 이해 가능
    • 데이터의 변화 및 추이를 쉽게 파악할 수 있음
    • 데이터의 의미를 명확하게 전달할 수 있음

2️⃣ NoSQL의 개념 및 특징

✨ NoSQL의 정의

  • Not Only SQL
    • 전통적인 관계형 데이터베이스(RDBMS)가 아닌, 비관계형 데이터베이스 시스템.
    • 대용량, 분산 환경에 최적화됨.

✨ SQL과 NoSQL의 차이

|구분|SQL (관계형 DB)|NoSQL (비관계형 DB)|
|저장 방식|표(Table) 단위의 정형화된 데이터|정형·비정형 데이터 (Key-Value 중심)|
|장점|무결성, Join 연산, 정합성 보장|확장성, 빠른 처리, 비용 효율적|
|단점|확장성 부족, 대용량 데이터 처리 어려움|Join 연산 불가, 데이터 일관성 약함|
|대표 시스템|MySQL, Oracle, PostgreSQL|MongoDB, Redis, Cassandra|

✨ NoSQL의 주요 특징

  • 수평적 확장성(Scale-out)이 우수
  • 데이터 읽기보다는 쓰기에 최적화
  • 고정된 테이블 구조(스키마)를 필요로 하지 않음
  • 관계형 데이터베이스의 ACID 속성보다는 BASE 특성을 제공

3️⃣ ACID와 BASE 개념 정리

✨ ACID (RDBMS 특성)

  • Atomicity(원자성)

    • 트랜잭션이 전체 실행되거나 전혀 실행되지 않음.
  • Consistency(일관성)

    • 트랜잭션 완료 후에도 일관된 상태 유지.
  • Isolation(고립성)

    • 트랜잭션 실행 중 다른 트랜잭션이 접근할 수 없음.
  • Durability(지속성)

    • 트랜잭션 결과가 영구적으로 반영됨.

    ✨ BASE (NoSQL 특성)

  • Basically Available (기본적 가용성)

    • 일부 실패가 있어도 시스템은 항상 사용 가능한 상태 유지.
  • Soft State (유연한 상태)

    • 노드의 상태가 외부 데이터를 기반으로 결정되어 변경될 수 있음.
  • Eventually Consistent (결과적 일관성)

    • 일시적으로 불일치가 있을 수 있으나, 최종적으로는 일관성 유지.

4️⃣ CAP 이론

  • 분산 시스템에서는 아래 세 가지 속성을 모두 만족하기 어렵다는 이론.
  • Consistency (일관성)
    • 모든 노드에서 같은 데이터 값을 유지함.
  • Availability (가용성)
    • 일부 노드에 문제가 있어도 시스템은 정상 작동 가능함.
  • Partition Tolerance (분할 허용성)
    • 네트워크 문제가 발생해도 서비스는 지속적으로 제공됨.
  • 일반적으로 NoSQL은 가용성(A)과 분할 허용성(P)을 우선시.

5️⃣ NoSQL 데이터베이스 유형

|유형|특징|예시|
|Key-Value DB|단순한 키와 값 쌍 저장, 빠른 읽기/쓰기 가능|Redis, DynamoDB|
|Column-Family DB|키 기반 컬럼의 집합, 높은 확장성|Cassandra, HBase|
|Document DB|복잡한 데이터 구조(JSON 등)를 문서 형태로 저장|MongoDB, CouchDB|
|Graph DB|노드와 관계를 그래프 형태로 저장, 연결성 데이터에 유리|Neo4j, Amazon Neptune|


6️⃣ DBMS 선택 전략

|요구사항|선택 전략|
|완벽한 트랜잭션(ACID) 보장 필요|관계형 DB (RDBMS)|
|대용량, 빠른 처리, 비용 효율성 중시|NoSQL|
|비용과 성능 절충 필요|오픈소스 DB (MySQL, PostgreSQL)|
|빠른 데이터 접근 및 읽기 필요|Column-based DB|
|메모리 기반 초고속 접근 필요|In-memory DB (Redis 등)|

profile
Hello World

0개의 댓글