1. DBMS 개요
DB란?
- 데이터의 집합
- 데이터의 저장 공간 자체
- 여러 명/응용프로그램이 공유하는 데이터들
- 동시 접근 가능해야 한다.
- 이런 DB를 관리 및 운영하는 역할을 하는 것이 바로 DBMS!
DB/DBMS 특징
- 데이터 무결성
- 시스템 레벨에서 이런 무결성을 제공해줌
- db 안 데이터는 오류가 없어야 하므로 제약 조건이라는 특성을 가진다.
- 데이터 독립성
- DB 크기가 바뀌거나 파일 저장소가 바뀌더라도 기존의 응용프로그램은 영향을 받지 말아야 한다.
- 보안
- DB 안 데이터에 데이터 소유자나 데이터 접근 허가자만 접근 가능해야 한다.
- 접근 시 사용자 계정 따라 다른 권한 가짐
- 데이터 중복 최소화
- 동일 데이터 여러 개 중복 저장된느 것 방지
- 정규화를 통해 중복 없이 관리
- 응용프로그램 제작 및 수정이 용이해진다
- 유지보수도 용이해짐
- 데이터 안전성 향상
- 데이터 백업, 복원 지원
- 데이터 깨지면 원상 복원/복구 방법이 명확해짐
DBMS 분류
- 계층형 DBMS
- 각 계층은 트리 형태이며 1:N 관계이다.
- 구조 변경이 까다롭다
- 검색 빠름
- 접근 유연성이 부족해서 임의 검색에서는 어려움.
- 망형 DBMS
- 계층형 DBMS 보완
- 사용하기 까다로움
- 관계형 DBMS(RDBMS)
- 테이블이라고 불리는 최소 단위로 구성(표 형태)
- 하나 이상의 열로 구성됨
- 데이터 중복이 필연적으로 나타나긴 함 ⇒ 연결고리를 만들어 관리하자(연결고리 : 릴레이션)
- 장점
- 변화에 순응
- 유지보수 편리
- 대용량 데이터 관리 및 데이터 무결성 보장
- 단점
- 시스템이 전반적으로 느려짐(자원 많이 차지함)
- 하드웨어 발전으로 해결되긴 함
- 이 단점 보완해서 나온 게 NoSQL이라는 DBMS
- 테이블 대신 다른 개념(map, document(MongoDB) 등에 따라 db가 결정됨) 사용
- 시스템이 전반적으로 느려짐(자원 많이 차지함)
2. SQL (Structured Query Language)
- 관계형 DB에서 사용되는 언어
- 다른 시스템으로의 이식성이 좋다
- 대화식 언어
- 분산형 클라/서버 구조
- 참고 : 오라클과 MySQL에서의 스키마는 각각 엄밀히 따지면 의미가 다르다.
3. 테스트 DB
- 말 그대로 테스트용 DB
- sakila : 온라인 dvd 렌탈 사이트
- world: 핀란드 통계 자료 샘플 데이터
- employees
- ERD로 DB 표현 가능
- ERD에서 동그라미 붙은 거는 데이터 없을 수도 있다는 옵션의 의미
- 아니라면 필수 데이터 의미
'DB' 카테고리의 다른 글
[DBMS] 테이블 (2) | 2025.06.15 |
---|---|
[DBMS] SQL 고급 문법 - 데이터 타입, 내장함수 (4) | 2025.06.14 |
[DBMS] SQL 기본 개념 (0) | 2025.06.14 |
[DBMS] 요구사항 분석, 시스템 설계, 데이터 모델링 (2) | 2025.06.10 |
[TIL] MongoDB (1) | 2025.05.26 |