데이터베이스(Data Base)는 응용 시스템들이 데이터를 공유할 수 있도록 운영에 필요한 모든 데이터를 통합하여 컴퓨터에 저장한 데이터를 말한다. 현실 세계에서의 저장 장치를 컴퓨터 세계로 옮겨 놓은 것으로 생각하면 된다.
데이터의 종류로는 공유 데이터, 운영 데이터, 통합 데이터, 저장 데이터가 있다.
- 공유(공용) 데이터(Shared Data) : 필요한 정보를 여러 사람이 함께 사용할 목적으로 만들어진 데이터
- 운영 데이터(Operation Data) : 한 조직체가 유지되고 운영에 필요로 하는 데이터 ( 관리와 다름)
- 통합 데이터(Integrated Data) : 데이터 집단에서 자료의 중복이나 군더더기를 제거하여(최소화하여) 최적화시킨 데이터
- 저장 데이터(Stored Data) : 컴퓨터 시스템이 접근할 수 있는 저장 매체에 저장된 데이터
※데이터베이스의 특징
- 동시 공유(Concurrent Sharing) : 여러 사람들이 동시에 공유하여 사용할 수 있다. (여러 사람이 동시에 봐도 문제가 없어야 한다.)
- 계속적인 변화(Continuous Evolution) : 데이터는 계속 변하기 때문에 새로운 데이터의 삽입, 삭제, 갱신을 통해 항상 최신의 데이터를 유지할 수 있어야 한다.
- 실시간 접근(Real Time Accessibility) : 질의에 대해 실시간 처리 및 응답이 가능해야 한다
- 데이터 중복의 최소화(Redundancy Minimize) : 동일 데이터의 중복성을 최소화해야 한다. (데이터를 백업하는 경우가 있어 중복을 아예 배제할 순 없고 최소화해야 한다.)
- 자료 간의 뛰어난 연계성(Superb Data Combination) : 데이터 개체뿐만 아니라 개체 간의 관계성까지 저장되어 있어 연계성이 뛰어나다.
- 내용에 의한 접근(Content Reference) : 데이터는 주소 접근이 아닌 내용에 대한 접근이다. 내용이 있을 만한 곳으로 직접 접근한다.
※데이터베이스의 구성요소
- 속성(Attribute) : 개체나 관계를 설명하기 위한 가장 작은 논리적 단위로 속성 자체만으로 정보를 표현할 수 없다.
- 개체(Entity) : 정보를 나타내는 논리적 단위로 하나 이상의 속성을 조합하여 구성된다. 현실에 존재하는 유·무형의 실체를 말한다. 개체는 단독으로 존재할 수 있다.
- 개체 타입(Entity Type) : 개체 스키마(Entity Schema)라고도 하며 개체 이름과 개체의 속성들로 구성하여 만든 논리적인 정의를 말한다.
- 개체 어커런스(Entity Occurrence) : 개체 인스턴스(Entity Instance)라고도 하며 개체 타입의 연산에 의해 실질적인 개체 값이 들어가 있는 상태를 말한다.
- 개체 집합(Entity Set) : 개체 어커런스들의 집합을 말한다.
- 관계(Relationship) : 속성 관계와 개체 관계가 있다. 속성 관계는 그 개체가 갖고 있는 성질이나 특징을 파악하여 속성으로 구성한 후 속성과 속성 사이의 관계를 가지고 개체를 기술하는데 이를 속성 관계 또는 개체 내 관계(Intra-Entity Relationship)라고 한다. 개체 관계는 개체와 개체 사이의 관계를 말하고 개체 간 관계(Inter-Entity Relationship)라고도 한다.
※데이터베이스의 단계와 스키마
- 외부 단계 : 사용자 관점에서 데이터베이스를 바라보는 관점이다. 사용자가 쉽게 접근하여 데이터를 사용할 수 있도록 여러 개의 외부 스키마가 있는 단계이다.
- 개념 단계 : 사용자와 물리적인 데이터베이스 사이의 단계로 데이터베이스 전체의 정보를 표현하는 단계이다.
- 내부 단계 : 실제로 데이터베이스가 저장되는 저장 장치에 대한 물리적 형태를 표현하는 단계로 내부 스키마를 갖는다.
스키마는 데이터의 구조적 특성을 의미한다. 데이터 객체, 이들의 성질, 이들 간의 관계, 데이터 관계들이 갖는 제약 조건에 관한 정의를 총칭하는 개념이다. 개체, 관계, 속성, 보안, 무결성, 제약조건에 관한 모든 것을 스키마라고 한다.
- 외부 스키마(External schema) : 각각의 사용자들이 원하는 형태의 논리적 구조를 정의한다. 조직 전체가 아닌 일부분을 정의한다. 외부 스키마는 각각의 사용자 그룹을 위해 만들어져야 하므로 여러 개가 존재한다. 응용 프로그래머나 사용자와 관련된 개체이다.
- 개념 스키마(Conceptual Scheam) : 모든 응용 시스템과 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 정의하는 개념으로 하나만 존재한다. 단순히 스키마라고도 한다.
- 내부 스키마(Internal Schema) : 전체 데이터베이스의 물리적 저장 형태를 기술하는 개념이다. 개념 스키마의 물리적 저장 형태를 정의하는 개념으로 역시 하나만 존재한다.
※데이터의 독립성 : 데이터의 독립성 때문에 DB의 저장 단계가 나누어진다.
- 논리적 데이터의 독립성 : 데이터베이스의 논리적 구조(개념 스키마)가 바뀌더라도 응용 프로그램을 다시 짤 필요성이 없다.
- 물리적 데이터의 독립성 : 물리적 저장 장치를 바꾸어야 할 때 물리적 구조의 변경이 필요하다. 이때 데이터베이스의 물리적 구조가 바뀌더라도 응용 프로그램을 다시 짤 필요성이 없다.
>>>>외부 스키마가 없이 바로 개념 스키마가 존재한다면 개념 스키마에 뭔가 추가되었을 때 응용 프로그램이 돌아가지 않는다. 때문에 독립적으로 외부 스키마가 존재해야 한다.
2020/11/23 - [공부/데이터베이스] - 정보 시스템 (IS : Information System)
2020/11/28 - [공부/데이터베이스] - 데이터베이스 관리 시스템(DBMS : DataBase Management System) 이란?
'IT공부 > 데이터베이스' 카테고리의 다른 글
데이터베이스 관리 시스템(DBMS : DataBase Management System) 이란? (0) | 2020.11.28 |
---|---|
정보 시스템 (IS : Information System) (0) | 2020.11.23 |