728x90
DB란?
전자적으로 저장되고 사용되는 관련있는 데이터들의 조직화된 집합
DBMS란?
사용자에게 DB를 정의해주고, 만들고, 관리할 수 있는 기능을 제공하는 소프트웨어 시스템이다.
관련 프로그램으로는 MSSQL, ORACLE, MS-SQL 등이 존재한다.
DB를 정의하다 보면 부가적인 데이터가 발생하게 된다. 이런 부가적인 정보들을 MetaData라고 부른다.
MetaData (Data about data)
데이터베이스를 정의하거나 기술하는 데이터, 카탈로그와 같은 의미로 데이터의 유형과 구조, 제약 조건, 보안, 저장, 인덱스, 사용자 그룹 등등 부가적인 정보를 의미한다.
Data Models
DB의 structure를 기술하는데에 사용될 수 있는 개념들이 모인 집합체. DB구조를 추상화 하여 표현할 수 있는 수단을 제공한다.
데이터 모델은 여러 종류가 존재하며, 추상화 수준과 DB 구조화 방식이 조금씩 다르다. DB에서 읽고 쓰기 위한 기본적인 동작들도 포함된다.
- DB structure : 데이터 유형, 관계, 제약 사항 등등
데이터 모델은 총 3가지로 분류된다. Conceptual data model, Logical data model, Physical data model이 존재한다.
- Conceptual data model
- 일반 사용자들이 쉽게 이해할 수 있는 개념들로 이루어진 모델
- 추상화 수준이 가장 높고, 비즈니스 요구 사항을 기술할때 주로 사용된다.
- entity-relationship model 즉, ER diagram으로 표현한다.
- Logical data model
- 이해하기 어렵지 않은 선에서, 디테일하게 DB를 구조화 할 수 있는 개념을 제공한다.
- 데이터가 컴퓨터에 물리적으로 저장되는 경우와 크게 다르지 않게 구조화한다.
- 특정 dbms나 storage에 종속되지 않는 선에서 구조화한다.
- Physical data model
- 컴퓨터에 데이터가 어떤 파일 형태로 저장되는 기술 할 수 있는 수단을 제공한다.
- data format, data orderings, access path
Database schema
- 데이터 모델을 바탕으로 데이터베이스의 구조를 기술한
- 스키마는 데이터베이스를 설계할 경우 정해진다, 그 후에는 변경되지 않음
Database state
- 데이터 베이스에 있는 실제 데이터는 자주 변경되는데, 특정 시점에 DB에 있는 데이터를 database state 혹은 snapshot 이라 한다. 인스턴스의 집합이라고도 말한다.
728x90
'DB' 카테고리의 다른 글
데이터베이스 기초 - SELECT문 (AS,DISTINCT,LIKE) (0) | 2023.04.24 |
---|