DBMS란?
DB를 '데이터의 집합'이라고 정의한다면, 이런 DB를 관리하고 운영하는 소프트웨어를 DBMS(Database Management System)라고 한다.
다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야 한다.
DBMS
사용자가 새로운 데이터베이스를 생성하고, 데이터베이스 구조를 명시할 수 있게 하고, 사용자가 데이터를 효율적으로 질의하고 수정할 수 있도록 하며, 시스템의 고장이나 권한이 없는 사용자로부터 데이터를 안전하게 보호하며, 동시에 여러 사용자가 데이터베이스를 접근하는 것을 제어하는 소프트웨어 패키지를 말한다.
* SQL은 여러 DBMS에서 제공되는 사실상의 표준 데이터베이스 언어이다.
DBMS의 기능
- 데이터 추출(Retrieval) : 사용자가 조회하는 데이터 혹은 응용 프로그램의 데이터를 추출함
- 데이터 조작(Manipulation) : 데이터를 조작하는 소프트웨어(응용 프로그램)가 요청하는 데이터의 삽입,수정,삭제 작업을 지원함
- 데이터 정의(Definition) : 데이터의 구조를 정의하고 데이터 구조에 대한 삭제 및 변경 기능을 수행함
- 데이터 제어(Control) : 데이터베이스 사용자를 생성하고 모니터링하며 접근을 제어함. 백업과 회복, 동시성 제어 등의 기능을 지원함
DBMS의 사용 이점
- 데이터 독립화
- 데이터와 응용 프로그램을 분리시킴으로써 상호 영향 정도를 줄일 수 있다.
- 데이터 중복 최소화/데이터 무결성 보장 :
- 중복되는 데이터를 최소화 시키면 데이터 무결성이 손상될 가능성이 줄어든다.
- 중복되는 데이터를 최소화시키면 필요한 저장공간의 낭비를 줄일 수 있다.
- 데이터 보안 향상
- 응용프로그램은 DBMS를 통해 DBMS가 허용하는 데이터에만 접근할 수 있다.
- 권한에 맞게 데이터 접근을 제한하거나 데이터를 암호화시켜 저장할 수 있다.
- 관리 편의성 향상
- 다양한 방법으로 데이터를 백업할 수 있다.
- 장애 발생 시 데이터를 복구할 수 있다
DBMS 용어
더보기


튜플(Tuple)
- 테이블에서의 행을 말한다.
- 같은 말로는 레코드(Record) 혹은 로우(Row)라고도 함
- 튜플은 릴레이션에서 중복되는 값을 가질 수 없다. 튜플의 수는 카디날리티(Cardinality) 라고 합니다.
어트리뷰트(Attribute)
- 테이블에서의 열을 말한다.
- 칼럼(Columm)이라고도 함
- 어트리뷰트(Attribute)의 수는 디그리(Degree)라고 한다.
테이블(Table)
- 릴레이션(Relation)이라고도 함
- 관계형 데이터베이스에서 정보를 구분하여 저장하는 기본 단위이다.
- ex. 유저 정보 > 유저 테이블, 게시글 정보 > 게시글 테이블 등…
키(Key)
- 테이블에서 행의 식별자로 이용되는 테이블의 열을 말한다. (ex. 유저ID, 게시글ID)
- 식별자(Identifier)
- 여러 개의 집합(인스턴스)체를 담고 있는 하나의 테이블에서 각각을 구분할 수 있는 논리적인 이름, 개념이며 이 구분자를 식별자(Identifier)라고 한다.
- 키는 주키와 외래키로 나뉘며 하나의 테이블에서 주키는 1개 또는 1쌍으로만 구성되고, 외래키는 여러개로 구성될 수 있습니다.
- 주키(PK) : 현재 테이블에서 행을 식별하는 식별자
- 외래키(FK) : 현재 테이블과 연관되어있는 외부 테이블과 연관된 행을 식별하는 식별자 (조인할때 써서 조인키 라고도 함)
도메인(Domain)
- 도메인은 하나의 어트리뷰트가 취할 수 있는 같은 타입의 원잣값들 집합이다. 예를 들어 성별 어트리뷰트의 도메인은 남과 여의 데이터의 값만 가능하다. 나이 어트리뷰트의 도메인은 숫자의 값만 입력할 수 있다. 그 외의 값은 입력될 수 없다.
DBMS 요구사항
DBMS는 DB를 효율적이고 직관적이고 안전하게 사용할 수 있게 해주는 기능을 가지고 있다.
효율적으로
ㆍ동일한 데이터가 저장되는 것을 방지하는 중복 제어 기능
ㆍ무결성 제약 조건을 정의/검사하는 기능
직관적으로
ㆍ서로 다른 데이터 간의 관계를 표현해주는 관계 표현
ㆍ편리한 인터페이스 제공
안전하게
ㆍ접근하는 사용자마다 다른 권한을 주는 접근 통제 기능
ㆍ데이터가 잘못 수정/삭제 되었을 때 백업하는 기능
DBMS는 데이터 관리의 원칙 중 안전, 공유, 일관성, 손상방지 등의 원칙을 트랜잭션 단위로 해결한다.
'TIL > CS' 카테고리의 다른 글
프로세스와 프로세서의 차이 (0) | 2024.03.24 |
---|---|
DBMS 발전 과정 (0) | 2024.03.21 |
데이터베이스(DB) 개요 (0) | 2024.03.20 |
Process Management (0) | 2024.03.19 |
프로세스(Process), 스레드(Thread), 스케줄링(Scheduling) (0) | 2024.03.18 |