데이터 공부/데이터베이스 & SQL

02. DB - 데이터베이스 관리 시스템

한소희DE 2021. 6. 1. 18:33

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다.

 

 

오늘은 데이터베이스 관리 시스템에 대해 공부하고 정리해보았다.

앞서, 데이터 베이스의 기본 개념에 대한 직전 포스팅은 아래 링크를 참고해두었다.

 

⬇ 이전 포스팅 링크

 

01. 데이터베이스 기본 개념

데이터베이스 공부에 앞서 - 데이터베이스 과목은, 학부 수업 때도 제일 흥미있게 들었던 과목이다. 물론 시간이 많이 지나 구체적 내용까지는 기억이 가물가물하지만, 다시한 번 전공 서적을

eng-sohee.tistory.com

 

 

 

목차

1. 데이터 베이스 관리 시스템의 등장 배경

2. 데이터 베이스 관리 시스템의 정의

3. 데이터 베이스 관리 시스템의 장단점

4. 데이터 베이스 관리 시스템의 발전 과정

 


 

 

 

 

1. 데이터 베이스 관리 시스템의 등장 배경

 

 

과거에는 데이터를 관리하기 위해 파일 시스템이라는 무료 소프트웨어를 이용했다.

파일 시스템이란, 데이터를 파일로 관리하기 위해 파일을 생성하거나 수정 및 삭제하는 기능을 제공하는 소프트웨어를 뜻한다.

 

이는 데이터의 중앙집중화가 되지 않아 데이터 파일 시스템마다 중복되는 정보가 많았다. 또한 응용 프로그램에 파일 시스템이 각각 종속되는 구조였다.

 

이는 데이터 중복에 의한 효율성 문제, 종속성 문제, 데이터 파일의 동시 공유 문제, 응용 프로그램 개발 난이도(응용 프로그램 개발에 파일 시스템 연동 및 관리가 포함) 문제가 있었고, 데이터베이스 관리 시스템은 이를 해결할 수 있기 때문에 등장했다.

 

 


  

2. 데이터 베이스 관리 시스템의 정의

 

앞서 설명한 바에 따르면,

즉, 데이터베이스관리시스템이란
파일 시스템의 중복과 종속 문제를 해결하기 위해 제시된 소프트웨어를 뜻한다.

 

 

데이터를 중앙집중 관리하여, 데이터베이스를 생성하고 접근하며 관리하는 일을 모두 관리한다. 따라서 사용자들은 데이터에 대한 요청 처리를 이 관리 시스템에 전달만 하면 된다.

 

따라서 응용프로그램을 바꾼다해서 데이터베이스를 수정할 필요도 없고, 한 파일만 보안 관리를 하면 되므로 안전하게 유지가 가능하고, 한 곳에만 저장하면 되므로 매우 효율적이게 된다. 

 

따라서 데이터베이스의 주요 기능을 정리하자면 아래와 같다.

 

1. 정의 기능 : 데이터 베이스 구조를 정의하거나 수정할 수 있다.

2. 조작 기능 : 데이터를 삽입.삭제.수정.검색하는 연산을 할 수 있다.

3. 제어 기능 : 데이터를 항상 정확하고 안전하게 유지할 수 있다.

 


 

 

3. 데이터 베이스 관리 시스템의 장단점

3-1. 장점

앞서 장점을 설명했지만, 해당 장점을 조금 더 구체적으로 설명해보겠다.

 

장점 설명
중복 통제 한 곳에서 중앙집중화 관리가 되기 때문이다.
독립성 확보 응용 프로그램과 독립적으로 운용되기 때문이다.
동시 공유 가능 여러 응용 프로그램이 같은 데이터에 접속이 가능한 구조기 때문이다.
보안의 향상 한 곳에서만 관리하면 되기 때문이다.
무결성 유지 가능 데이터의 오류를 감지해 수정하면 모든 시스템에 적용되는 데이터가 모두 수정되는 것이기 때문이다.
표준화 가능 데이터 접근이 한 곳이기 때문에, 접근방법이나 규제의 통일화된 지정이 가능하기 때문이다.
빠른 장애 회복 가능 데이터 일관성과 무결성을 유지하며 데이터를 장애가 발생하기 이전 상태로 복구하는 기능을 지원하기 때문이다.
응용 프로그램 개발 비용 감소 데이터에 대한 모든 관리를 응용프로그램이 아닌 관리 시스템이 하기 때문이다.

 

 

3-2. 단점

무수한 장점이 있는 만큼, 단점도 물론 존재한다. 이는 아래 표와 같다.

 

단점 설명
비용 문제 파일 시스템은 무료인 반면, 이는 별도 구입 비용이 필요하기 떄문이다.
백업 및 회복의 복잡성 데이터 양이 많아 구조도 복잡하고 동시 공유가 지원되니까 원인 상태를 정확히 파악하기 어렵기 때문이다.
중앙집중관리의 단점 시스템 장애는 전체 응용프로그램에 영향을 주기 때문이다.

 

그럼에도 불구하고, 단점에 비해 데이터베이스 관리 시스템이 주는 장점이 더욱 많기 때문에, 대부분의 기업은 관리 시스템을 사용한다.

 

 

데이터베이스 관리 시스템을 반드시 사용해야 할까?

No. 반드시 필요한 것은 아니기 때문에, 돈이 매우 부족하거나 매우 작은 프로젝트를 하는 경우 혹은 데이터 구조나 내용이 자주 변경되지 않는 경우에는 데이터베이스 관리시스템을 굳이 꼭 사용할 필요가 없다.

 

 

 


  

4. 데이터 베이스 관리 시스템의 발전 과정

4-1. 1세대 - 네트워크 DBMS와 계층 DBMS

 

 

네트워크 DBMS

간선과 노드로 데이터 간 관계가 정의된 데이터베이스. 구조가 복잡하고 변경하기 어렵다는 특징이 있다.

 

계층 DBMS

트리 형태로 구성된 데이터베이스. 구조가 단순하나 부모 자식 관계가 명확해, 현실 데이터 관계를 모두 반영하기 어려울 수 있다는 특징이 있다.

 

 

 

4-2. 2세대

 

🔥 관계 DBMS

데이터베이스를 테이블 형태(2차원)로 구성하는 관계 데이터 모델. 단순하고 이해하기 쉬운 구조로 구성한다는 장점으로 지금도 널리 사용되는 시스템이다. 질의어(Query Language)를 사용한 데이터 접근 방법이라는 특징을 지녔다.

 

대표적인 관계 DBMS는 무엇이 있을까? 👀
My SQL, 오라클, 엑세스, 인포미스 등 

 

 

4-3. 3세대

 

객체지향 DBMS

새로운 유형의 데이터 저장(비정형 정보)과 데이터의 복잡한 분석 및 처리를 요하는 니즈가 생기며 발생한 시스템. 그러나 관계 DBMS보다 1) 표준도 부족하고, 2) 기존 트랜잭션 처리 등의 부분에서 좋지 않다. 

 

대표적인 객체지향 DBMS는 무엇이 있을까? 👀
오투, 온투스, 젬스톤 등

 

 

객체관계 DBMS

기존 관계 DBMS의 파워에, 비정형 정보를 담을 수 있다는 객체지향 DBMS의 장점을 더한 DBMS. 이 또한 표준이 명확하지 않아 기술적 차원에서 혼란이 다소 있어 관계 DBMS보다 많이 사용되지 않는다.

 

 


🔥 그렇다면 현재 가장 많이 사용되는 DBMS 는 무엇일까?

단순하고 이해하기 쉬운 관계 DBMS가 주로 사용되며, 객체관계 DBMS가 간혹 사용되고 있는 상황이다.