・데이터 베이스 관리 시스템(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계층 스키마과 독립성

-논리적 데이터 독립성:외부스키마나 응용프로그램을 변경하지 않고 개념스키마를 변경할 수 있도록하는 것

-물리적 데이터 독립성:개념스키마를 변경하지 않고 내부스키마를 변경할 수 있도록 하는 것



・데이터 모델링 *세가지 모델링 구분이 잘 안간다. 각 예를 좀 보고싶은데.

-개념적 데이터모델

:사용자가 데이터를 어떻게 인식하는지에 관심

:데이터가 어떤 형태로 저장되는가 따위의 세부적인 부분은 관심이 없는 모델링

:엔티티 관계 데이터 모델

-논리적 데이터 모델

:컴퓨터와 사용자 둘다를 고려하는 데이터 모델로 사용자가 이해할 수 있게 하면서

저장될 수 있는 구조를 갖게한다

-물리적 데이터 모델

:데이터가 어떻게 컴퓨터에 저장되는지, 조금 더 컴퓨터의 입장에서 바라봄

:레코드의 형식, 레코드 순서, 접근 경로 같은 정보들

+ Recent posts