컴퓨터 관련학과의 학생들은 대부분 프로젝트를 수행하며, 프로젝트 수행에 있어 데이터베이스 사용은 필수적이다. 이런 데이터베이스를 사용하기 위해서는 데이터베이스 관리 시스템(DataBase Management System)의 설치가 필요하다. 그러나 DBMS를 설치의 경우 수분(시간)이 소요되며, 까다로운 설치 과정을 요구하는 DBMS도 있다. 따라서 이러한 문제를 해결하기 위해 본 연구에서는 Docker를 이용해 DBMS를 쉽게 설치할 수 있는 시스템을 제안하였다. Docker는 리눅스의 응용 프로그램들을 소프트웨어 Container안에 배치하는 일을 자동화하는 오픈소스 프로젝트이다. Docker Container는 소프트웨어의 실행에 필요한 모든 것을 포함하는 완전한 파일 시스템 안에 감싸며, 안에는 코드, 런타임, 시스템 도구, 시스템 라이브러리 등 서버에 설치되는 무엇이든 포함된다. 이는 실행 중인 환경과 관계없이 언제나 동일하게 실행될 것을 보증한다. 본 제안 시스템을 이용하여 데이터베이스를 생성한 후 웹에서 데이터베이스 접속 정보를 확인할 수 있으며, 서버 상태를 분 단위로 확인할 수 있도록 하였다. 본 제안 시스템을 구현하여 10팀의 프로젝트에 적용한 결과 개별 설치보다 Maria DBMS의 경우 94.5%, Oracle DBMS의 경우 98.3%의 설치 시간이 감소하여 향상된 효율을 확인하였다.
컴퓨터 관련학과의 학생들은 대부분 프로젝트를 수행하며, 프로젝트 수행에 있어 데이터베이스 사용은 필수적이다. 이런 데이터베이스를 사용하기 위해서는 데이터베이스 관리 시스템(DataBase Management System)의 설치가 필요하다. 그러나 DBMS를 설치의 경우 수분(시간)이 소요되며, 까다로운 설치 과정을 요구하는 DBMS도 있다. 따라서 이러한 문제를 해결하기 위해 본 연구에서는 Docker를 이용해 DBMS를 쉽게 설치할 수 있는 시스템을 제안하였다. Docker는 리눅스의 응용 프로그램들을 소프트웨어 Container안에 배치하는 일을 자동화하는 오픈소스 프로젝트이다. Docker Container는 소프트웨어의 실행에 필요한 모든 것을 포함하는 완전한 파일 시스템 안에 감싸며, 안에는 코드, 런타임, 시스템 도구, 시스템 라이브러리 등 서버에 설치되는 무엇이든 포함된다. 이는 실행 중인 환경과 관계없이 언제나 동일하게 실행될 것을 보증한다. 본 제안 시스템을 이용하여 데이터베이스를 생성한 후 웹에서 데이터베이스 접속 정보를 확인할 수 있으며, 서버 상태를 분 단위로 확인할 수 있도록 하였다. 본 제안 시스템을 구현하여 10팀의 프로젝트에 적용한 결과 개별 설치보다 Maria DBMS의 경우 94.5%, Oracle DBMS의 경우 98.3%의 설치 시간이 감소하여 향상된 효율을 확인하였다.
Most of the students in computer-related departments work on projects, and it is essential to use a database for project execution. To use such a database, it is necessary to install a Database Management System. However, it takes several minutes (hours) to install a DBMS, and some DBMS require a di...
Most of the students in computer-related departments work on projects, and it is essential to use a database for project execution. To use such a database, it is necessary to install a Database Management System. However, it takes several minutes (hours) to install a DBMS, and some DBMS require a difficult installation process. Therefore, in order to solve this problem, this study proposed a system that can easily install DBMS using Docker. Docker is an open source project that automates the deployment of Linux applications into software containers. Docker Container is wrapped in a complete file system that includes everything necessary for the execution of software, and includes code, runtime, system tools, system libraries, and anything that is installed on the server. This guarantees that they will always run the same regardless of the environment in which they are running. After creating a database using this proposed system, you can check the database access information on the web and check the server status in minutes. As a result of of implementing this proposed system and applying it to the projects of 10 teams, the installation time was reduced by 94.5% for Maria DBMS and 98.3% for Oracle DBMS than individual installation, confirming improved efficiency.
Most of the students in computer-related departments work on projects, and it is essential to use a database for project execution. To use such a database, it is necessary to install a Database Management System. However, it takes several minutes (hours) to install a DBMS, and some DBMS require a difficult installation process. Therefore, in order to solve this problem, this study proposed a system that can easily install DBMS using Docker. Docker is an open source project that automates the deployment of Linux applications into software containers. Docker Container is wrapped in a complete file system that includes everything necessary for the execution of software, and includes code, runtime, system tools, system libraries, and anything that is installed on the server. This guarantees that they will always run the same regardless of the environment in which they are running. After creating a database using this proposed system, you can check the database access information on the web and check the server status in minutes. As a result of of implementing this proposed system and applying it to the projects of 10 teams, the installation time was reduced by 94.5% for Maria DBMS and 98.3% for Oracle DBMS than individual installation, confirming improved efficiency.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
제안 방법
본 연구에선 이와 같은 로컬 데이터베이스를 운영하는 혹은 운영하게 될 소규모 팀을 위하여 웹 환경에서 간단한 절차를 통해 원하는 DBMS 이미지의 Docker Container를 서버에 생성할 수 있으며, 생성된 Docker Container DBMS는 사용자가 접근할 수 있도록 IP 주소, 포트번호, 계정 아이디, 비밀번호를 알려준다. 이러한 Docker의 데이터베이스 Container 생성 과정은 웹에서 진행하며, 간단한 회원 가입, 로그인을 통해 이용할 수 있다.
본 개발 시스템은 사용자들의 데이터베이스 생성, 관리의 편의성을 위한 시스템으로 시스템의 이름은 DDPS(Docker Database Pass System)으로 명명하였다.
본 시스템을 이용하여 Oracle 11g 및 Maria DB를 설치하였을 경우와 직접 Installer를 받아 PC에 설치 한 경우의 속도를 측정하였다.
따라서 본 연구에서는 Docker를 이용하여 이러한 설치 과정을 간소화한다.
본 시스템을 구현 후 우리대학 컴퓨터정보과 2, 3학년 프로젝트 과목에 적용하였다.
이론/모형
본 연구에서 웹 시스템 구현을 위해 SpringBoot, Node.js[9] 그리고 Maria[10]를 사용하였다.
본 시스템을 구현하기 위해 Phython, Nodejs와 Maria DBMS를 이용하였다.
성능/효과
4는 시스템 관리자 측면에서의 시스템 구성도이다. 14개의 프로세스로 이루어져 있으며, 일반 사용자와 달리 본 시스템을 관리하는 웹 시스템 관리 기능을 사용할 수 있으며, 시스템 관리 기능으로는 이미지 관리, 사용자 관리, 서버 관리가 있다. 이미지 관리에서는 사용자가 생성하게 될 Container의 이미지를 조회, 추가, 삭제하며, Docker Hub에 공개되어있는 Maria DB[7], Oracle[8] 이미지를 사용한다.
5%의 시간이 소요되었다. 따라서 2개의 DBMS의 개별 설치와 본 시스템을 이용한 경우를 비교하면, Oracle 11g DBMS의 경우 98.3%, Maria DBMS의 94.5%의 설치 시간이 감소하였다.
학생들이 프로젝트 개발에 많이 사용하고 있는 Oracle 11g, Maria DBMS의 설치 시간을 비교한 결과, Oracle 11g의 경우 학생 개개인이 DBMS를 설치할 경우 690초의 시간이 소요되며, Maria를 설치할 경우 130초의 시간이 소요되나, 본 제안 방법으로 설치할 경우 이미지 다운에 Oracle 11g의 경우 58초가 Maria의 경우 21초가 소요되며, 이를 이용하여 Container를 다운 받아 생성하는데 소요되는 시간은 Oracle 11g가 6초, Maria가 5초이다. 따라서 10대의 컴퓨터에 설치할 경우 제안 방법이 10대의 컴퓨터에 적용할 경우 약 1.
학생들이 프로젝트 개발에 많이 사용하고 있는 Oracle 11g, Maria DBMS의 설치 시간을 비교한 결과, Oracle 11g의 경우 학생 개개인이 DBMS를 설치할 경우 690초의 시간이 소요되며, Maria를 설치할 경우 130초의 시간이 소요되나, 본 제안 방법으로 설치할 경우 이미지 다운에 Oracle 11g의 경우 58초가 Maria의 경우 21초가 소요되며, 이를 이용하여 Container를 다운 받아 생성하는데 소요되는 시간은 Oracle 11g가 6초, Maria가 5초이다. 따라서 10대의 컴퓨터에 설치할 경우 제안 방법이 10대의 컴퓨터에 적용할 경우 약 1.7%가 Maria의 경우 약 5.5%의 시간이 소요되어 제안 방법이 효율적임을 확인하였다.
참고문헌 (10)
Bernstein, Dacid, "Containers and Cloid: FromLXC to Docker to Kubernetes", Cloud Computing, IEEE, Vol. 1, No. 3, pp. 81-83, Sep. 2014.
A. Younge, et al., "A Tale of Two Systems: Using Containers to Deploy HPC applications on Supercomputers and Clouds,", in pric. of the IEEE International Conference on Supercomputers Technology & Science 2017 (CloudCom 2017).
※ AI-Helper는 부적절한 답변을 할 수 있습니다.