DBMS를 알기전에 DB에 대해서 알아야 한다. DB는 간단하게 말하면 데이터의 집합이다. 서버에서 비지니스 로직을 처리할 때, 데이터를 가져오거나 저장을 할 때가 있다. 이때 데이터를 가져오거나 저장을 하는 곳이 바로 DB이다.
DBMS는 DB를 관리하고 운영하는 소프트웨어이다. 즉 DB에 접근할 수 있도록 인터페이스를 제공하는 소프트웨어이다. 데이터베이스를 구축하는 틀을 제공하며, 효율적으로 데이터를 검색, 저장, 업데이트 하는 기능을 제공합니다.
DBMS의 특징들에 따라서 다양한 장점들이 있다. 그리고 DB에 대해서 동시 접근이 가능하도록 해준다. DBMS의 특징중 가장 중요한 것이 나는 데이터 무결성이라고 생각한다. DB에 저장된 데이터 값과 그것이 표현하는 실제 값이 일치할 수 있도록 유지해주는 것이 서버를 구축하는데 가장 중요하다 생각한다.
DBMS의 단점으로는 우선 운영비가 증가하는 것이다. DBMS 종류중 상업적으로 사용하는 Oracle은 유료이다. 물론 MySQL와 같은 오픈 소스형 DBMS가 존재하기도 한다. 그리고 생각보다 복잡한 백업과 회복이다. 데이터베이스는 구조가 복잡하고, 여러 사용자들이 동시에 사용하기 때문에 장애가 일어났을 때 정확한 이유를 파악하는데 쉽지 않다. 그래서 백업 조치와 회복 기법을 정교하게 생각해야한다. 그러나 백업과 회복을 할 수 있는 것 자체가 다행인 점이기도 하다.
Web Application Server에서 비지니스 로직을 처리하다가 DB에 있는 데이터를 가져오거나, 저장을 해야할 때 우리는 DBMS를 사용한다. 즉 위에서 말한 것 처럼 WAS와 DB의 중간다리 소프트웨어 역할을 한다. 서버에서 DB의 데이터를 가져올 수 있는 이유는 DBMS의 존재이기 때문으로 알면 좋을 것 같다.
DBMS에 대해서 연구를 해보았다.
다음에는 Spring Boot에 대해서 포스팅을 할 예정이다.
참고자료