2020. 7. 27. 18:05ㆍ개인공부/데이터베이스 개론
1. 데이터 베이스 관리 시스템의 등장 배경
파일 시스템
- 데이터를 파일로 관리
- 파일을 생성, 삭제, 수정, 검색 (Create Delete Update Research)
- 운영체제와 함께 설치된다.
- 응용 프로그램별로 필요한 데이터를 별도의 파일로 관리한다.
- 별도의 구입 비용이 들지 않지만 파일이 중복되는 문제가 있음
문제점들.
- 같은 내용의 데이터가 여러파일에 중복 저장
- 응용프로그램이 데이터 파일에 종속적
- 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족
- 응용프로그램 개발이 쉽지 않음
1. 같은 내용의 데이터가 여러파일에 중복 저장
데이터 일관성, *데이터 무결성을 유지하기 어려워짐
*데이터 무결성 : 우연하게 또는 의도적으로 변경되거나 파괴되는 상황에 노출되지 않고 보존되는 특성
2. 응용프로그램이 데이터 파일에 종속적
과일 목록 | |
watermelon | 수박 |
orange | 오렌지 |
변경
과일 목록 | ||
watermelon | 2 | 수박 |
orange | 3 | 오렌지 |
3.데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족
2. 데이터 베이스 관리 시스템(DBMS)의 정의
파일 시스템이 가진 모든 문제의 근본 원인은 데이터의 중복성과 데이터의 종속성으로 요약할수 있음.
해당 문제해결의 일차적인 방안은 데이터를 통합하여 저장하는 것.
하지만 근본적인 문제를 해결할 수 없고 그 대안으로 제시된 것이 데이터베이스 관리 시스템
데이터베이스 관리 시스템(DBMS)은 데이터 중복과 데이터 종속 문제를 해결하기 위해 나온 소프트웨어.
조직에 필요한 데이터를 DB에 통합하여 저장하고 이에 대한 관리를 집중적으로 담당.
DBMS는 응용프로그램을 대신하여 데이터베이스에 존재하는 데이터의 CRUD를 가능하게 하고
모든 응용 프로그램이 데이터베이스를 공유할수 있게 함.
DB를 생성하고 접근하며 관리하는 일은 DBMS가 모두 담당한다.
사용자는 직접 또는 응용 프로그램을 통해
1. 원하는 데이터를 찾고
2. 어떤 처리를 원하는지
DBMS에 요청하면 된다.
DB와 관련한 작업은 DBMS가 수행한 후 그 결과만 응용프로그램을 통해 사용자에게 전달해주는 것이다.
사용자나 응용프로그램은 DB의 물리적 저장 구조나 데이터 접근 및 처리 방법등을 자세히 알아야 하는 부담이 줄어든다.
DB구조나 접근 방법등이 변경되어도, 사용자가 미리 알거나 응용프로그램을 변경할 필요가 없어 데이터 독립성이 확보된다.
DBMS가 제공하는 주요 기능은 세가지로 요약할 수 있다.
- 정의 기능 : DB구조를 정의, 수정 할수 있다
- 조작 기능 : 데이터를 삽입,삭제,수정,검색 하는 연산을 할 수 있다.
- 제어 기능 : 데이터를 항상 정확하고 안전하게 유지할 수 있다.
1. 정의 기능
- DBMS는 조직에 필요한 데이터를 저장하기 적합한 데이터 베이스 구조를 정의하거나, 이미 정의된 구조를 수정할 수 있다.
2. 조작 기능
- DBMS는 DB에 저장된 데이터에 접근하여 사용할 수 있는 기능을 제공.
- 사용자 요구에 따라 데이터를 삽입,삭제,수정,검색 하는 연산을 효율적으로 처리.
3. 제어 기능
- DBMS는 데이터를 여러 사용자가 공유해도 항상 정확하고 안전하게 유지하는 기능을 제공.
- DBMS는 데이터를 삽입,삭제,수정,검색 하는 연산을 한 후에도 내용이 일관,무결성을 유지.
- 장애가 발생해도 회복이 가능하도록 제어.
- 권한이 있는 사용자에게만 데이터 접근을 허용하여 보안을 유지
- 여러 사용자가 DB에 동시에 접근하여 데이터를 처리할 수 있도록 제어.
3. 데이터 베이스 관리 시스템(DBMS)의 장단점
장점.
-
데이터 중복을 통제할 수 있다.
-
데이터 독립성이 확보된다.
-
데이터를 동시 공유할 수 있다.
-
데이터 보안이 향상된다.
-
데이터 무결성을 유지할 수 있다.
-
표준화할 수 있다.
-
장애 발생시 회복이 가능
-
응용 프로그램 개발 비용이 줄어듬
1. 데이터 중복을 통제할 수 있다.
- DBMS는 DB에 데이터를 통합하며 관리하므로 데이터 중복문제 해결, 데이터 일관성 유지.
2.데이터 독립성이 확보된다.
- 파일 시스템에는 파일 구조가 바뀌면 응용 프로그램도 함께 수정해야 하는 데이터 종속 문제가 존재.
- 파일 시스템같은 경우 (아래와 같이)
과일 목록 watermelon 수박 orange 오렌지
변경
과일 목록 watermelon 2 수박 orange 3 오렌지
- DBMS는 응용프로그램을 대신해서 DB에 접근
- 응용프로그램 대신 DB 관리하는 모든 책임을 진다.
- 따라서 DB구조가 변경 되어도 응용 프로그램이 영향을 받지 않음.
- 응용 프로그램과 DB사이에 독립성이 확보됨.
3. 데이터를 동시 공유할 수 있다.
- DBMS는 DB에 통합된 데이터를 여러 응용프로그램이 공유하여 같은 데이터에 동시 접근할 수 있도록 지원.
- 이는 DBMS가 동일한 데이터를 각 응용프로그램의 요구에 따라 다양한 구조로 제공
- 동시 접근을 제어하는 어려운 기술을 보유
- 동시 공유를 지원하기 때문에 불필요한 데이터 중복을 제한할수 있다.
4. 데이터 보안이 향상된다.
- 파일 시스템은 중복된 모든 파일의 보안을 같은 수준으로 유지하기 어려움.
- 사용권한을 파일 단위로 제한하기 때문에 더 구체적이고 다양한 접근 제어를 제공하지 않음.
- 하지만 DBMS는 DB를 이용해 데이터를 중앙 집중식으로 관리하므로 데이터에 대한 효율적인 접근 제어가 가능.
- 권한이 없는 사용자의 접근, 허용되지 않은 데이터와 연산에 대한 요청을 사전에 차단할 수 있어 철저한 보안을 제공.
5. 데이터 무결성을 유지할 수 있다.
- 데이터 무결성은 저장된 데이터 값의 정확성을 의미.
- DBMS는 데이터에 대한 연산이 수행될 때마다 유효성을 검사, 데이터 무결성을 유지
6. 표준화할 수 있다.
- 데이터에 대한 모든 접근이 DBMS를 통해 이루어지기 때문에 DB에 접근하는 방법, 데이터 형식과 구조 등을 표준화 하기 쉽다.
- 모든 응용 프로그램은 DBMS가 미리 정한 표준화 방식을 통해 DB에 접근한다.
7. 장애 발생시 회복이 가능
- 저장된 데이터에 접근하여 처리하는 과정에서는 다양한 장애가 발생할 수 있음
- DBMS는 장애가 발생해도 데이터 일관성과 무결성을 유지
- 데이터가 장애가 발생하기 이전 상태로 복구하는 회복 기능을 지원
8.응용 프로그램 개발 비용이 줄어듬
- DBMS의 구조가 변경되어도 응용 프로그램은 변경필요가 없어 유지 보수 비용이 파일시스템보다 적음.
단점.
- 비용이 많이 든다.
- 백업과 회복 방법이 복잡하다
- 중앙 집중 관리로 인한 취약점이 존재
비용이 많이 든다.
- 파일시스템은 운영체제와 함께 설치되어 별도의 구입 비용이 들지 않음
- DBMS는 별도 구입 비용이 많이 든다.
- 동시 사용이 허용되는 사용자 수에 따라 제품 가격도 증가
- DBMS의 복잡하고 다양한 기능을 제공하기 위해 컴퓨터 자원을 많이 사용
2. 백업과 회복 방법이 복잡하다.
- DB는 데이터 양이 많아 구조가 복잡, 여러 사용자의 동시 공유를 지원하여 장애가 발생했을 때 원인과 상태를 정확히 파악하기 어려움
- 따라서 미리 백업해졶고 장애 발생 후 데이터를 원래의 일관된 상태로 회복하는 방법이 복잡할 수 밖에 없음.
3. 중앙 집중 관리로 인한 취약점이 존재.
- 모든 데이터가 DB에 통합되어 있고 이에관한 관리 책임이 DBMS에 집중
- DB나 DBMS에 장애가 발생하면 전체 시스템의 업무 처리가 중단
- DB에 대한 의존도가 높은 시스템일수록 가용성과 신뢰성에 치명적인 영향 받을수도 있음
'개인공부 > 데이터베이스 개론' 카테고리의 다른 글
데이터 베이스 개론 5 - 데이터 베이스 사용자 (0) | 2020.07.31 |
---|---|
데이터 베이스 개론 4 (0) | 2020.07.29 |
데이터 베이스 개론 3-1 (0) | 2020.07.28 |
데이터베이스 개론3 (0) | 2020.07.28 |
데이터베이스 개론 - 1 - 2020.07.25 (0) | 2020.07.25 |