데이터베이스의 정의
데이터베이스란 어느 한 조직에서 업무 처리를 위해 다수의 응용시스템 혹은 다수의 사용자들이 공용으로 사용하기 위해 통합, 저장된 데이터의 집합을 말한다.
- 통합된 데이터(Integrated Data) : 하나의 주제에 따라 중복을 최소화한 데이터의 집합.
- 저장된 데이터(Stored Data) : 사용자나 응용시스템이 필요시 언제든지 이용할 수 있도록 저장된 데이터의 집합.
- 공용 데이터(Shared Data) : 여러 사용자와 다수의 응용 시스템이 공유할 수 있도록 만든 데이터의 집합.
- 운영 데이터(Operational Data) : 중복을 최소화하고 여러 사람이 공유함에 있어 문제가 발생하지 않도록 관리를 필요로 하는 데이터로 이용가치가 잇는 데이터의 집합.
데이터베이스의 특징
- 계속적인 변화(진화)(Continuous Evolution) : 항상 최신 정보를 유지할 수 있도록 삽입, 삭제, 갱신이 이루어짐.
- 동시 공유(Concurrent Sharing) : 여러 사용자가 동시에 접근하여 이용.
- 실시간 접근성(Real-Time Accessibility) : 질의(Query)에 대해 실시간 처리 및 응답.
- 내용에 의한 참조(Contents Reference) : 데이터의 물리적 주소나 위치에 의하지 않고 사용자가 요구하는 데이터 내용으로 검색.
- 데이터 중복의 최소화(Redundancy Minimize) : 동일 데이터의 중복성을 최소화해야함.
데이터베이스의 구조(스키마)
스키마(Schema)는 데이터베이스의 전체적인 구조와 제약조건에 대한 명세를 기술, 정의한 것을 말하며 스킴(Scheme)이라고도 한다.
- 외부 스키마(External Schema) : 전체 데이터 중 사용자가 사용하는 한 부분에서 본 논리적 구조. 서브 스키마.
- 개념 스키마(Conceptual Schema) : 논리적 관점(사용자 관점)에서 본 전체적인 데이터 구조.
- 내부 스키마(Internal Schema) : 물리적 저장 장치 관점(기계 관점)에서 본 데이터베이스의 물리적 구조.
데이터베이스 관리자(DBA : DataBase Administrator)와 사용자
데이터베이스 시스템과 관련된 모든 자원에 대해 기획과 통제를 하며, 데이터베이스 언어를 이용해 DBMS를 거쳐 데이터베이스 시스템의 전체적인 관리 운영에 책임을 지는 사람이나 집단을 DBA라고 한다.
이러한 관리자와는 대비되는 개념으로 데이터베이스를 사용하는 집단을 데이터베이스 사용자라 하며, 응용 프로그래머(Application Programmer : DB내용을 일반사용자가 사용할 수 있도록 응용프로그램을 개발하는 사람), 일반사용자(End User : DB의 내용을 실제 사용하는 사람이나 집단), 데이터 관리자(DA : Data Administrator, 데이터의 정의와 체계화, 감독 및 보안 업무를 담당)로 구분한다.
DBA와 DA를 구분하자면 DB관점에서, DA는 데이터 관점에서 업무를 수행한다.
( https://kaonsoft.tistory.com/23 )
데이터베이스의 설계
데이터베이스의 스키마를 정의하고 이에 따라 데이터베이스를 구현하기 하기 위한 전반적인 과정을 말한다.
- 요구사항 분석 : 데이터베이스 정의, 요구사항에 따른 명세서(Specification)작성.
- 설계 : 개념적(Conceptual), 논리적(Logical), 물리적(Physical)설계.
- 구현 : 실제 데이터베이스 만드는 과정. 간결, 명료, 목적 일치, 유지 보수 용이.
- 운영 및 개선(유지보수) : 문제점과 개선점 파악.