DB 전자적으로 저장되고 사용되는 데이터들의 집합
DBMS 사용자에게 DB 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템
metadata 데이터를 설명하기 위한 데이터 catalog 라고도 부름
(데이터 유형, 구조, 제약 조건, 보안, 저장, 인덱스, 사용자 그룹 등등)
database system == database + DBMS + 연관된 applications
쿼리 == 요청
data models DB의 구조를 기술하는데 사용될 수 있는 개념들이 모인 집합
conceptual data models: 일반 사용자들이 쉽게 이해. 비즈니스 요구 사항을 추상화 하여 기술할 때 사용 ex)ER diagram
logical data models: 이해하기 어렵지 않으면서도 디테일하게 DB를 구조화 할 수 있는 개념들을 제공. 데이터가 컴퓨터에 저장될 때의 구조와 크게 다르지 않게 DB 구조화를 가능하게 함. ex)relational data model(table화 하는)
physical data models: 컴퓨터에 데이터가 어떻게 파일 형태로 저장되는지를 기술할 수 있는 수단을 제공. 인덱스 같은것도 여기서,,
database schema: data model을 바탕으로 database의 구조를 기술한 것.
three-schema architecture: database system을 구축하는 architecture 중의 하나. 한 레벨에서의 변화가 상위 레벨에 영향을 주어선 X. 스키마 끼리의 사이 맵핑만 있다면! Good 안정적 운용 가능.
-> internal schema: 물리적으로 데이터가 어떻게 저장되는지. data storage, data structure, access path 등등 실체가 있는 내용 기술.
-> external schema: 사용자가 바라보는 쪽. user views라고도 불림.
-> conceptual schema: 전체 database에 대한 구조를 기술. 물리적인 저장 구조에 관한 내용은 숨김. entities, data types, relationships, user operations(활용), constraints(제약 사항)에 집중
오늘날 완벽하게 혹은 명시적으로 나누지는 않음
데이터가 존재하는 곳은 internal level.
database language (DDL)
-> conceptual schema 를 정의하기 위해 대부분 사용되는 언어 어떤 파라미터를 통해서 정의한다.
-> storage definition language (SDL) 요즘 거의 파라미터 등의 설정으로 대체
-> view definition language (VDL) external schemas를 정의하기 위해 사용되는 언어