・데이터 베이스 관리 시스템(DBMS, database management system)
-데이터 베이스를 만들거나 관리하는 소프트웨어
-오라클사의 oracle, 마소의 ms sql, 리눅스의 mysql
・데이터 베이스 시스템(DBS, database system)
-사용자가 데이터베이스 관리 시스템을 통하여 물리적인
데이터베이스와 소통하는 형태의 시스템
・데이터베이스
-실제 데이터가 쌓이는 스페이스
・데이터 베이스 관리 시스템의 장점
-데이터의 중복성과 불일치성감소
-데이터 보안
-질의처리(query)에 효율적인 저장구조
-백업과 복구 가능
-다양한 ui
-일관된 데이터유지
-데이터베이스 설계, 운용관리, 유지 비용감소
・데이터 베이스 관리 시스템의 단점
-자원이 많다. 개발도 새로 해야되고 개발하려면 사람써야하고, 인프라 구축해야하고 ,서버도 필요하고...
-비싸다
・데이터베이스 시스템을 사용하지 않는 경우
-데이터베이스와 응용 프로그램이 매우 단순하고 변경이 거의 없는경우
-단일 사용자만이 데이터베이스에 접근 하는 경우
-실시간서이 제일 중요한 데이터베이스 시스템의 경우
・데이터베이스 스키마
-데이터베이스의 구조와 제약조건에 대해서 분명하고 자세하게 기술한것
-구체적으로 데이터베이스를 구성하는 attribute와 관계 등의 집합
-테이블 등을 묶는 하나의 묶음을 스키마라고도 종종 들어왔기 때문에 혼동
===========
스키마는 3계층 스키마로 나누어져 구성되어있고, 이 각각의 스키마는 결국 데이터베이스의 구조와 제약조건에 대한 전반적인 명세를 기술한 것을 의미한다. 3계층으로 스키마를 나눈 이유는 관점에 따라서 분류한 것이다.
- 외부스키마 : 개인의 입장, '서브스키마'라고도 한다, 사용자 뷰를 가리킨다.
하나의 외부스키마는 여럿이 공유 가능하며,
하나의 DB시스템에 여러 개의 외부스키마가 존재 가능
- 내부스키마 : 조직 전체의 입장, 전체적인 뷰를 가리킨다.
개체간의 관계와 제약조건을 나타내고,
데이터베이스의 접근권한/보안/무결성 규칙에 대한 명세를 정의함,
일반적으로 '스키마'라는 내부스키마를 가리킴,
내부스키마는 DBA가 만듦, 데이터베이스의 전체적인 구조로써 하나만 존재해야 함
- 개념스키마 : 시스템 프로그래머나 설계자의 관점에서 바라보는 스키마,
데이터베이스의 물리적 구조를 가리킴(= 실제 저장방법을 기술하는 물리적인 저장장치와 관련됨)
===========
출처: http://ykcb.tistory.com/entry/데이터베이스-스키마의-개념-특징 [YKCB Team]
・데이터베이스 상태
-데이터는 빠지거나 들어오는데, 그중 "특정(일시적) 시점"의 데이터베이스 내용
・데이터베이스 언어
-DLL(Data Definition Lang)
:디비 관리자나 설계자가 데이터간의 관계를 정의하거나 이미 정의된 디비의 구조를 변경하거나 수정하는데 사용하는 언어
-DML(Data Manipulation Lang)
:디비 사용자가 응용프로그램이나 질의어를 이용해서 저장된 실제데이터를 검색(select), 삽입(insert), 삭제(delete), 변경 등을 수행하는 언어
-DCL(DAta Conrol Lang)
:디비 관리자가 데이터를 관리하려고 데이터의 보안, 무결성, 데이터복구
병행 수행 제어등을 정의할때나, 사용자의 권한을 설정할때 사용하는 언어
・데이터베이스 사용자
-조직내에 구축된 디비를 사용하는 사람들의 총칭
-디비 관리자(DB admin)
:디비 전체환경 구성과 운영에 관련된 전반적인 책임자
-디비 설계자(DB designer)
:디비를 구축하고자하는 요구 사항을 분석해 디비의 개념,물리적 스키마 설계를 책임
-시스템 프로그램 개발자,응용프로그램 개발자,
:초보적인 유저가 사용할 수 있도록 디비관련 어플을 개발하는 사람
-업무분석가, 일반사용자 등
・데이터베이스 단위
-필드:테이블의 열(=attribute, 속성, 필드, 컬럼)
-레코드:테이블의 행(=투플,레코드, 로우)
-파일:레코드의 집합
-데이터베이스 : 파일들이 모여 연관성이 생기면 디비
・디비의 추상화와 데이터 독립성
-추상화:알필요가 없는 복잡한 부분을 은폐
*디비와 어떤 연관?:내부 스키마에서 외부스키마로 갈수록 필요없는 정보(데이터의 형식같은 것들)를 감추어간다
-데이터 독립성 : 특정 스키마를 변경할 때 상위 스키마에 영향을 미치기 않게 하는 것
・3계층 스키마과 독립성
-논리적 데이터 독립성:외부스키마나 응용프로그램을 변경하지 않고 개념스키마를 변경할 수 있도록하는 것
-물리적 데이터 독립성:개념스키마를 변경하지 않고 내부스키마를 변경할 수 있도록 하는 것
・데이터 모델링 *세가지 모델링 구분이 잘 안간다. 각 예를 좀 보고싶은데.
-개념적 데이터모델
:사용자가 데이터를 어떻게 인식하는지에 관심
:데이터가 어떤 형태로 저장되는가 따위의 세부적인 부분은 관심이 없는 모델링
:엔티티 관계 데이터 모델
-논리적 데이터 모델
:컴퓨터와 사용자 둘다를 고려하는 데이터 모델로 사용자가 이해할 수 있게 하면서
저장될 수 있는 구조를 갖게한다
-물리적 데이터 모델
:데이터가 어떻게 컴퓨터에 저장되는지, 조금 더 컴퓨터의 입장에서 바라봄
:레코드의 형식, 레코드 순서, 접근 경로 같은 정보들
'DataBase > DataModeling' 카테고리의 다른 글
[데이터모델링]개념적 설계를 실제로 해보자. 개념적설계, 엔티티추출, 관계설정, 커디널리티설정, 키어트리뷰트설정, 관계타입 어트리뷰트설정 (0) | 2017.12.26 |
---|---|
[데이터모델링]요구사항 분석 (0) | 2017.12.26 |
[데이터모델링]ER데이터 모델(엔티티와 엔티티타입, 애트리뷰트, 관계) (0) | 2017.12.26 |
[데이터모델링]데이터베이스 설계 과정(라이프 사이클) (0) | 2017.12.26 |
[데이터모델링]개념적 데이터모델, 논리적 데이터모델, 물리적데이터 모델 (0) | 2017.12.26 |