데이터 베이스

박종원·2024년 10월 8일

데이터베이스란?

  • 정의: 여러 사람이 공유하고 사용할 목적으로 통합 관리되는 정보의 집합.

  • 특징: 논리적으로 연관된 하나 이상의 자료 모음. 자료 파일을 조직적으로 통합하여 중복을 없애고 구조화한 집합체.

1. 관계형 데이터베이스 (RDBMS)

  • 특징: 데이터를 테이블 형식으로 저장하며, 테이블 간의 관계를 정의. SQL(Structured Query Language)을 사용하여 데이터 관리.

  • 장점 :
    - 데이터 무결성 유지
    - 복잡한 쿼리 가능
    - 데이터 간의 명확한 관계 정의

  • 사용 사례: 은행 시스템, ERP 시스템, CRM 시스템

2. NoSQL 데이터베이스

  • 특징: 테이블 대신 문서, 키-값 쌍, 그래프, 컬럼 패밀리 등의 다양한 데이터 모델 사용. 비정형 데이터와 대규모 데이터를 효율적으로 처리.
  • 장점:
    스키마 유연성
    높은 확장성
    빠른 읽기/쓰기 성능
  • 사용 사례: 빅 데이터 분석, 실시간 웹 애플리케이션, 소셜 네트워크 서비스

둘 사이의 비교

  • 데이터 모델:
    • RDBMS: 고정된 스키마, 테이블 간 명확한 관계
    • NoSQL: 유연한 스키마, 다양한 데이터 구조 지원
  • 확장성 :
    • RDBMS: 수직적 확장(더 강력한 하드웨어로 업그레이드)
    • NoSQL: 수평적 확장(서버를 추가하여 성능 향상)
      데이터 일관성:
    • RDBMS: 강력한 ACID 특성
    • NoSQL: CAP 이론에 따라 일관성, 가용성, 파티션 내성을 선택적으로 지원

관계형 데이터 베이스 구조

  • 스키마 : 데이터베이스에서 자료의 구조, 표현방법, 관계등 전반적인 명세를 기술한 것
속성명속성 설명...
ID아이디...
Password비밀번호...
Join_date가입날짜...

SQL(Structed Query Language)

  • DML : 데이터 조작 언어
    • 데이터베이스에서 데이터를 조작하거나 조회할 때 사용
    • 테이블의 레코드를 CRUD
  • DDL : 데이터 정의 언어
    • 데이터 베이스 객체(table, view, user, index)의 구조를 정의
  • DCL : 데이터 제어 언어
    • Database, Table 접근권한이나 CRUD권한 정의
    • 특정 사용자에게 테이블의 검색권한 부여/ 금지
  • TCL : 트랙잭션 제어 언어
    • 트랜잭션 단위로 실행한 명령문을 적용하거나 취소

0개의 댓글