티스토리 뷰

이제 부터는 파일 처리 시스템의 단점과 비교하여 데이터베이스 시스템의 장점을 알아 보도록 함.

 

1. 데이터의 중복과 비 일관성 (Data redundancy and inconsistency)

서로 다른 프로그래머가 동일한 정보를 이용하는 서로 다른 어플리케이션 프로그램을 제작한다고 한다면,

 

첫째, 프로그램의 제작 언어(programming languages)가 서로 다를 수 있음

둘째, 각 프로그램들이 저장하는 파일 구조(Format)가 다를 수 있음

셋째, 동일한 정보임에도 불구하고 서로 다른 장소에 각 각 저장할 수 있음.

 즉, 정보가 중복되거나 일관적이지 못함.

 

예를 들어,

은행에서 사용되는 시스템에서 고객 정보를 필요로 하는 여러가지 프로그램 A, B , C가 존재한다고 가정함

 

고객 정보 파일 예제

고객 명

주 소

예 금 액

계좌번호

김00 씨

서울 특별시...

100만원

53000-32-00000

 

위와 같은 고객 정보 파일을

A라는 프로그램은 폴더01 에 kk_A 라는 파일에 고객 정보를 저장하고,

B라는 프로그램은 폴더02 에 B_kk이라는 파일에 고객 정보를 저장하고,

C라는 프로그램은 폴더03 에 C_k_C 라는 파일에 고객 정보를 저장하여 사용한다고 가정한다면,

각 프로그램은 불필요하게 동일한 정보를 서로 다른 파일에 유지하여 관리하게 된다. (데이터의 중복)

 

만약 A라는 프로그램에서 고객 김00씨의 예금 금액 200만원으로 변동하였을 경우,

B, C가 이용하고 있는 B_kk 파일 과 C_k_C라는 파일에 고객 김00씨의 예금 금액을 변경하여야 한다.

그렇지 않을 경우에B_kk , C_k_C 파일과 kk_A라는파일의 내용이 서로 불일치 하게 된다. (비 일관성)

 

2. 정보 접근의 어려움 (Difficulty in accessing data)

예를 들어,

은행 시스템에서 고객 예금액이 100만원 이상인 사람만 골라 내야한는 작업 요청이 전산과로 들어왔다고 하자.

하지만, 기존 A, B, C 프로그램은 그러한 기능을 수행 할 수 없다.

따라서 다른 프로그램인 D를 만들어서 그 기능을 수행하도록 하였다.

 

그런데 이게 왠일?

고객 관리 부서에서 또 다른 기능인 주소가 서울특별시로 시작하는 고객명단을 뽑아 달라고전산과로 요청한다.

기존 A, B, C, D 프로그램은 그러한 기능을 못한다.

따라서 다른 프로그램인 E를 만들어서 그 기능을 수행하도록 했다.

....

언제까지 이렇게 만들어야 하나?

 

즉, 정보 접근의 어려움이란 것은 새로운 작업이 주어졌을 때, 기존의 프로그램을 변경하거나, 개조하는데 시간이

오래 걸림을 의미한다.

 

3. 데이터의 고립(Data isolation)

정보가 여기저기 서로 다른 파일에 서로 다른 형식으로 흩어져서 존재하며,

그 흩어진 정보를 이용하기 위해서는 재구성 비용이 들어가며, 오랜 시간이 소요될 수 도 있음을 말한다.

 

4. 무결성 문제 (Integrity problems)

데이터는 어떠한 일관적인 제약조건을 만족해야 한다.

 

예를 들어,

1번에서 설명한고객 정보에서 예금액은 -(음수)가 될 수 없다는 조건이 있다고 가정하자.

그렇다면 파일kk_A에도 예금액이 -(음수)가 되는 경우가 없도록 조취를 취하고,

B_kk 파일에도 , C_k_C 파일에도 모두 동일한 조취를 취해야 한다.

이렇듯, 파일 처리 시스템은여러번 같은 일을 되풀이 하는 문제가 존재한다.

데이터베이스 시스템에선 일관된 처리를 할 수 있다. 

 

5. 원자성 문제(Atomicity problems)

프로그램이 수행 중인 작업은전부 완료되어 저장 되든지, 완료 못하면저장을 아예 안하던지 둘 중 하나이어야 한다는 것이다.

 

예를 들어, 

데이터를 가지고 A프로그램이 고객 정보를 갱신하는 중간에정전이 일어나게 되면 어떤 일이 일어날까?

A 프로그램은 이러한 경우에 전혀 대비하지 않았다면, 고객 정보 갱신이 이상하게 되거나, 반쯤 되다 말거나,

다시 갱신하거나 이런 경우가 발생될 것이다.

 

데이터베이스 시스템에서는 도중에 정전이 된다면 저장을 하지 않게 된다.

즉, 수행중인 작업이 컴퓨터 고장이나, 기타 의도하지 않은 이유로 중단될 경우 , 작업을전부 완료하지 못했으므로 저장을 하지 않고 이전의 데이터를 복원한다.

 

6. 동시 엑세스 문제

많은 사용자가 동시에 같은 정보에 접속하여 갱신한다면, 동시에 갱신되도록 해야 한다. 정보의 일관성을 보장하게 해야 한다.

 

예를 들어, 김00씨의 계좌에 500만원이 있다고 가정하자.

김00 씨가 , 53번 계좌에 접속해서 50만원을 빼내가는데, 아들 김00씨도 동일 시간에 53번 계좌에서 150만원을 빼간다고 하자

동시에 이런 일이 발생한다면, 파일 시스템에서 잔액이 350만원이 될 수 도 있고, 450만원이 될 수도 있다.

 

데이터베이스 시스템에서는 이런 경우도 방지할 수 있다.

 

위와 같이 파일 처리 시스템에서 일어날 수 있는 6가지 문제 등을 해결하기 위해 데이터베이스 시스템을 사용한다.

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함