데이터베이스는어느 한 조직의 여러 응용 시스템들이 공용할 수 있도록 통합, 저장된 운영 데이터의 집합이다.
1, 통합 데이터: 데이터베이스에서는 원칙적으로 똑같은 데이터가 중복 x
2. 저장 데이터: 저장되어있음
3: 운영 데이터: 어느 조직의 고유한 기능을 수행하기 위해 반드시 유지해야 할 데이터
4: 공용 데이터: 조직에 있는 여러 응용 시스템들이 공동으로 소유하고 유지하며 이용하는 데이터
데이터 베이스의 4가지 특성
1) 실시간 접근성
2) 계속적인 변화
3) 동시 공용
4) 내용에 의한 참조
데이터(data)는 현실 세계로부터 단순한 관찰이나 측정을 통해서 수집된 사실(fact)이나 값(value)을 말함
정보(information)란 어떤 상황에 대한 적절한 결정을 할 수 있게 하는 지식으로서 데이터의 유요한 해석이나 데이터 상호간의 관계를 말하는 것
I=P(D) (I: 정보, P: 처리기(processor), D: 데이터)
정보가 유용성을 갖기 위해서는 정확성(accuracy)와 현재성(currency)를 가지고 있어야 한다.
또한 정보가 의사결정에 유효한 역할을 할 수 있게 하기 위해서 데이터는 계속적으로 현재의 당면한 문제들에 관련된 것이어야 하고, 또 필요시에는 컴퓨터를 통해 언제라도 이용할 수 있도록 수집(collected), 조직(organized), 저장(stored)되어 있어야 한다.
데이터가 조직되고 접근되는 방법에 따라 일괄 처리, 온라인 처리, 분산 처리 시스템으로 구분 가능
일괄 처리(batch processing): 데이터를 수집해서 분류하고 정렬시킨 다음에 일괄 처리하는 데이터 처리 방법을 말한다. 유사한 트랜잭션을 한데 모아 일정 시간에 한꺼번에 처리함. 순차 접근 방법을 사용할 수 있는 업무에 적합하다.
장점: 처리 비용이 적게 들고 시스템 성능을 높일 수 있다.
단점: 개인 입장에서는 처리 결과를 기다려야 하는 단점과 여러 가지 사전 준비 작업을 거쳐야 한다.
*트랜잭션이란? 논리적 작업 단위로서 하나의 단위로 처리되어야 하는 분뢰될 수 없는 연산 그룹
온라인 처리 시스템(online processing system): 일괄 처리 방식이 필요로 했던 사전 준비 작업 없이 곧바로 데이터를 처리하는 방식
장점: 데이터의 현재성을 편리하게 유지할 수 있어서 효과적이고 데이터의 오류를 발견하기도 쉽다. 따라서 데이터 처리의 회전 주기도 단축시킬 수 있다.
단점: cpu의 효율성이 낮아지고 통신 제어기 등이 필요하기 때문에 구조가 복잡해진다. 프로그램의 테스트나 보수 유지가 더 어렵게 된다.
분산 처리 시스템(distributed processing system): 중앙처리시스템(centralized system: 데이터가 저장된 곳을 중심으로 기능들이 집중된 방식)의 문제점을 개선한 방식으로 지리적(물리적)으로 분산되어 있는 처리기와 데이터베이스를 네트워크로 연결시켜 사용자는 마치 (논리적으로) 하나의 시스템을 사용하는 것처럼 데이터를 처리해주는 시스템이다. 기본적으로 분산처리기(local processor-local pc), 통신 네트워크(computer network), 분산 데이터베이스를 구성요소로 하고 있다. 클라이언트/서버 시스템(client/server)이라고 표현하기도 한다.
데이터베이스의 개념적 구성요소
1) 개체(entity): 데이터베이스에 표현하려고 하는 유형, 무형의 객체(object)로써 서로 구별되는 것이다. 하나의 개체는 하나 이상의 속성(애트리뷰트:attribute-이름을 가진, 데이터의 가장 작은 논리적 단위)로 구성되고 각 속성은 그 개체의 특성이나 상태를 기술한다. 속성 이름들로만 기술된 개체의 정의를 개체 타입(entity type) 이라고 하고 실제 속성 값으로 정의된 것을 개체 인스턴스, 개체 어커런스(entity instance ,entity occurrence)라고 한다. 필드 이름으로만 표현된 레코드 정의를 레코드 타입(record type)이라고 하고, 실제 필드 값으로 표현된 레코드를 레코드 어커런스, 레코드 인스턴스라고 한다.
2) 관계: 속성들 간의 속성관계와 개체 집합과 개체 집합 사이의 관계를 나타내는 개체 관계로 나뉜다.
데이터베이스의 구조
사용자가 생각하는 데이터의 구조: 논리적 구조 -> 논리적 구조에서 취급하는 데이터 레코드들은 논리적 레코드라고 한다.
디스크나 테이프와 같은 저장 장치 위에 물리적으로 저장되어 있는 데이터의 실제 구조: 물리적 구조 -> 물리적 구조에서 취급하는 데이터 레코드들은 저장 레코드라고 한다.
파일 시스템에서의 가장 큰 문제점은 데이터 종속성(data dependency)과 데이터 중복성(data redundancy)이었다.
데이터 종속성: 응용 프로그램과 데이터 간의 상호 의존 관계
데이터 중복성: 한 시스템 내에 내용이 같은 데이터가 중복되게 저장, 관리되는 것. 일관성, 보안성, 경제성, 무결성을 해치기 때문에 바람직하지 못하다.
DBMS의 필수 기능
1) 정의 기능
2) 조작 기능
3) 제어 기능
데이터 독립성
논리적 데이터 독립성: DBMS가 데이터베이스의 논리적 구조를 변경시키더라도 기존 응용 프로그램들에 아무런 영향을 주지 않는 것
물리적 데이터 독립성: 기존 응용 프로그램들에게 아무런 영향을 주지 않고 데이터베이스 관리 시스템이 데이터베이스의 물리적 구조를 변경할 수 있는 것
'CS > database' 카테고리의 다른 글
Subquery (0) | 2021.04.07 |
---|---|
Join (0) | 2021.04.06 |
JDBC Programming 개발 순서 (0) | 2021.03.12 |
JDBC(Java DataBase Connectivity) (0) | 2021.03.12 |
SQL 언어 (0) | 2021.03.11 |