데이터베이스(Database)
데이터베이스란?
- 응용 시스템들이 데이터를 공유할 수 있도록 운영에 필요한 모든 데이터를 통합하여 컴퓨터에 저장한 데이터를 의미한다.
- 여러 명의 사용자, 다수의 시스템 또는 다수의 프로그램이 사용할 목적으로 통합하여 관리되는 데이터의 집합이다.
데이터베이스의 특징
- 실시간 접근성(Real Time Accessibillty) : 사용자의 질의에 대하여 실시간 처리로 응답한다.
- 계속적인 진화(Continuous Evolution) : 데이터의 삽입, 삭제, 갱신을 통해 정확한 데이터를 동적으로 유지한다.
- 동시 공유(Concurrent Sharing) : 다수의 사용자가 동시에 이용할 수 있다.
- 내용에 의한 참조(content Referense) : 데이터의 저장된 위치가 아닌 데이터의 내용을 참조하여 접근한다.
- 데이터 논리적 독립성(Independence) : 응용프로그램과 데이터베이스를 독립시킴으로써 데이터 논리적 구조를 변경시키더라도 응용프로그램은 변경되지 않는다.
- 뛰어난 데이터 간의 연계성(Superb Data combination) : 데이터와 데이터 사이의 관련된 정보들로 연결되어 있다.
데이터베이스의 필요성
- 과거에는 데이터를 파일 형태로 저장하는 파일 시스템을 사용했다고 한다.
- 데이터를 파일로 관리할 경우 다음과 같은 단점이 존재한다.
- 데이터의 종속성 : 파일 구조가 변경되면 응용프로그램도 변경해야 한다.
- 데이터의 중복성 : 한 시스템 내의 데이터가 중복 저장 및 관리되어 데이터가 중복 저장되게 된다.
- 경제성 : 데이터를 사용할 때마다 파일 전체를 읽어야 하며 데이터가 중복되어 저장되면 추가적인 저장 공간이 필요하다.
- 효율성 : 다수의 사용자가 동시 작업을 할 수 없다.
- 보안성 : 파일을 인가되지 않은 사용자도 수정할 수 있어 보안성이 떨어진다.
- 일관성 : 데이터 중복이 있을 경우 동일성을 유지하기 어려워 비효율적이다.
- 이러한 단점을 보완하면서 대량의 데이터를 효율적으로 관리하고 운영하기 위해 DBMS가 등장했다.
DBMS(Database Management System) - 데이터베이스 관리 시스템
DBMS란?
- 데이터의 집합인 데이터베이스를 관리 및 운영하기 위한 시스템 또는 소프트웨어를 의미한다.
- 대표적으로 MySQL, 오라클, MariaDB 등이 있다.
- DBMS의 유형은 계층형(Hierarchical), 망형(Network), 관계형(Relational), 객체지향형(Object-Oriented), 객체 관계형(Object-Relational) 등으로 분류된다.
DBMS의 장단점
장점
- 중복 제어 : 데이터가 여러 위치에 중복 저장되는 현상을 방지한다.
- 접근 통제 : 데이터 접근 권한을 통제할 수 있다.
- 관계 표현 : 데이터간의 다양한 관계를 표현할 수 있는 기능을 제공한다.
- 무결성 제약 조건 : 무결성에 관한 제약 조건을 정의 및 검사하는 기능을 제공한다.
단점
- 운영비의 증대 : 파일 시스템으로 데이터를 관리하는 것과 비교하여 운영비용이 많이 든다.
- 복잡한 백업과 회복 : 구조가 복잡하고 동시 공유로 인해 백업 조치나 사후 회복 기법을 수립해 놓는 것이 어렵다.
- 시스템의 취약성 : DBMS는 통합된 시스템으로 일부의 공장이 전체 시스템에 영향을 끼쳐 시스템 신뢰성과 가용성을 저해할 수 있다.
Reference
https://m.blog.naver.com/sundooedu/221301384166
https://codedragon.tistory.com/3802