🍋 ⚾️ 💻 🎬 🎮

CS/Database

[DB] 02. 데이터베이스 시스템 - 2

aeightchill 2025. 3. 12. 21:01
728x90

 

 

 

2.  데이터베이스 관리 시스템 (Database Management System, DBMS)

 

DBMS 란?

파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어로, 조직에서 필요한 데이터를 통합하여 저장 및 관리

 


 

DBMS의 주요 기능

기능 설명
데이터 정의 (Definition) 데이터 구조 정의 및 삭제, 변경 가능
데이터 조작 (Manipulation) 데이터를 삽입, 수정, 삭제하는 기능
데이터 검색 (Retrieve) 사용자가 원하는 데이터를 조회하는 기능
데이터 제어 (Control) 접근 제어, 백업 및 복구, 동시성 제어 기능

 


 

DBMS의 장단점

장점  👍🏻
  • 데이터 중복 최소화
  • 데이터 독립성 확보
  • 동시 접근 가능
  • 보안 강화
  • 데이터 무결성 유지
  • 표준화 가능
  • 장애 발생 시 복구 가능
  • 응용 프로그램 개발 비용 절감
단점  👎🏻
  • 비용 부담
  • 백업 및 복구 방법 복잡
  • 중앙 집중 관리로 인한 보안 취약점 존재

 


 

 

3.  데이터 모델 (Data Model)

데이터베이스 시스템에서 현실 세계를 표현하는 방식

 

주요 데이터 모델 종류

  1. 계층 데이터 모델 (Hierarchical Data Model)
  2. 네트워크 데이터 모델 (Network Data Model)
  3. 객체 데이터 모델 (Object Data Model)
  4. 관계 데이터 모델 (Relational Data Model)    →    가장 많이 사용
  5. 객체-관계 데이터 모델 (Object-Relational Data Model)

 

세대별 데이터 모델

1세대 : 초기 데이터 모델

  • Network DBMS (그래프 구조)     →    예) IDS (Integrated Data Store)
  • Hierarchical DBMS (트리 구조)   →    예) IMS (Information Management System)

2세대 : 관계형 데이터 모델 (RDBMS)

  • Relational DBMS (테이블 형태)
    • 예) MySQL, MS SQL, PostgreSQL
    • 속성 값을 사용
  • Object-Relational DBMS
    • 객체 식별자를 이용

 


 

 

4.  데이터베이스 사용자 (Database Users)

데이터베이스를 이용하기 위해 접근하는 모든 사람을 지칭하며, 이용 목적에 따라 다음과 같이 분류

 

  1. 일반 사용자
    • 은행 창구 직원, 민원 접수 담당자 등 데이터를 다루는 업무를 하는 사람
    • 프로그래머가 개발한 프로그램을 사용하여 데이터베이스에 접근
  2. 응용 프로그래머
    • 일반 사용자가 사용할 수 있는 프로그램 개발
    • Java, C, JSP 등 프로그래밍 언어 + SQL 사용
    • UI 및 응용 로직 개발
  3. SQL 사용자
    • SQL을 직접 사용하여 업무 처리 (ex. IT 부서 담당자)
    • 응용 프로그램이 구현되지 않은 업무를 SQL을 통해 직접 수행
  4. 데이터베이스 관리자 (DBA, Database Administrator)
    • 데이터베이스 운영 및 유지보수 총괄
    • 데이터 설계, 보안, 성능 최적화, 백업 및 복구 담당

📌   데이터베이스 사용자 별로 갖추어야 할 지식 수준 (✕  :  없음,  ○   :  보통,  ◎  :  높음)
  SQL 언어 프로그래밍 능력 DBMS 지식 데이터 구성
일반 사용자
SQL 사용자
응용 프로그래머
데이터베이스 관리자

 

 


 

 

5.  데이터 언어 (Data Language)

사용자와 데이터베이스 관리 시스템 간의 통신 수단

 

  1. 데이터 정의어 (DDL, Data Definition Language)
    • 데이터베이스의 구조 및 객체 생성, 수정, 삭제
    • 예) CREATE, ALTER, DROP
  2. 데이터 조작어 (DML, Data Manipulation Language)
    • 데이터를 삽입, 수정, 삭제, 조회
    • 예) SELECT, INSERT, UPDATE, DELETE
  3. 데이터 제어어 (DCL, Data Control Language)
    • 사용자 권한 관리 및 트랜잭션 제어
    • 예) GRANT, REVOKE, COMMIT, ROLLBACK

 

 

 

 

 

728x90