DB

데이터베이스 기본

준몽쓰 2023. 5. 1. 17:21

데이터베이스(DB, DataBase)는 일정한 규칙, 혹은 규약을 통해 구조화되어 저장되는 데이터의 모음이다. 해당 데이터베이스를 제어, 관리하는 통합시스템을 DBMS라고 하며, 데이터베이스 안에 있는 데이터들은 특정 DBMS마다 정의된 쿼리 언어를 통해 삽입, 삭제, 수정, 조회 등을 수행할 수 있다.

 

◎ 엔터티

엔터티(entity)는 사람, 장소, 물건, 개념 등 여러 개의 속성을 지닌 명사를 말한다. 개체라고 표현하기도 하며 예를 들어 사원이라는 엔터티가 있다하면 사원은 이름, 사원번호, 입사일, 급여의 속성을 갖고 있다. 만약 서비스의 요구 사항과 관련이 없다면 사라지게 된다.

그림1. '사원' 엔터티

◎ 릴레이션

릴레이션(relation)은 데이터베이스에서 정보를 구분하여 저장하는 기본 단위이다. 엔터티에 관한 데이터를 데이터베이스는 릴레이션 하나에 담아서 관리한다.

그림처럼 사원이라는 엔터티가 데이터베이스에서 관리 될 때 릴레이션으로 변화된 것을 볼 수 있다. 릴레이션은 관계형 데이터베이스에서는 '테이블'이라고 하며 NoSQL 데이터베이스에서는 '컬렉션'이라고 한다.

 

앞의 그림처럼 레코드가 쌓여서 테이블이 되고 테이블이 쌓여서 데이터베이스가 되는 것이라 볼 수 있다.

 

◎ 속성

속성(attribute)은 릴레이션에서 관리하는 구체적이며 고유한 이름을 갖는 정보이다. 예를 들어 '차'라는 엔터티의 속성을 보면 차 넘버, 바퀴 수, 차 색깔, 차종 등이 있을 것인데 이 중에서 서비스의 요구 사항을 기반으로 관리해야 할 필요가 있는 속성들만 엔터티의 속성이 된다.

 

◎ 도메인

도메인(domain)이란 릴레이션에 포함된 각각의 속성들이 가질 수 있는 값의 집합을 말한다. 예를 들어 성별이라는 속성이 있다면 이 속성이 가질 수 있는 값은 {남,여}라는 집합이 된다.

 

◎ 카디널러티

카디널러티는 튜플의 갯수를 말한다. 튜플은 테이블에서 으로 구성되어 있다.

 

◎ 디그리

디그리는 속성의 갯수를 말한다. 속성은 테이블에서 로 구성되어 있다.