본문 바로가기
우테코 프리코스/프리코스 오픈미션

내 프로젝트에 맞는 DB는?

by sloth365 2025. 11. 23.

예전에 SQL 문법에 대해서 학습해 본 적이 있다.

하지만 실제로 DB를 연결하고 사용해 본 적이 없기에

이번에 DB를 연동하고 응용해 보려 했다.

 

나는 많은 DB들 중에서 MySQL과 H2를 고민했었다.

자료 조사를 하며 내가 알아낸 장단점을 비교해 봤다.

MySQL

장점

- 데이터를 영구 보관한다.

- 데이터에 대한 안전성이 높다.

- 대규모 트래픽 처리가 가능하다.

단점

- 사용하려면 설정하는 과정이 많이 복잡하다.

- 프로그램이 무겁다.

H2

장점

- 프로그램 자체가 가볍다.

- 설정 과정이 단순하다.

- 실행 속도가 빠르다.

단점

- 데이터가 휘발성으로 날아간다.

- 대규모 트래픽을 처리하기 힘들다.

 

이 두 가지를 내 프로젝트와 비교해 봤을 어떤 것이 더 적합할까?

 

나는 객체들의 초기값들을 DB에 두고 실행할 때마다 가져올 계획이었다.

DB를 연동하고 SQL문도 다시 학습하며 프로그램에서 추가적으로 사용해보려 했다.

 

하지만 MySQL은 무거워서 실행 속도가 느린 단점이 있었고 사용자는 1인이기 때문에

대규모 트래픽을 고민할 필요가 없었다.

 

내 프로젝트는 실행마다 데이터가 초기화되어야 하기 때문에 계속 저장해 둘 필요가 없었다.

H2는 데이터가 휘발되는 단점이 있지만 내 프로그램 특성상 문제가 없었고

설정 과정이 단순해서 연동하는 것보다 연동해서 실제 사용하는 것에 시간을 더 투자할 수 있겠다고 생각했다.

 

그래서 나는 H2를 사용하기로 결정했다.