TIL ... day 47 7주차 - day 7. Mariadb/ MySQL 비교우위가 무엇인가? … 22.06.30

BYEONGMIN CHOI·2022년 7월 4일
0

TIL(Today I Learned)

목록 보기
24/24

이번 최종 프로젝트를 하면서 이제 까지 써왔던 mysql을 왜 썼는지 생각해 보는 시간을 가졌으며, 대채할 수 있는 DB를 찾아보고 비교해보기로 하였다.


MySQL

  • 90년대 중반에 개발된 MySQL은 시장에서 사용할 수 있는 최초의 오픈 DB중 하나이며 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템(RDBMS: Relational DBMS)이다. MySQL은 단순 쿼리 처리 성능이 어떤 제품보다 압도적이며 이미 오래 사용되어 왔기 때문에 성능과 신뢰성 등에서 꾸준히 개선되어 온 것도 장점이다. 또한 MySQL은 오픈 소스이며, 다중 사용자와 다중 스레드를 지원하고 C언어, C++, JAVA, PHP 등 여러 프로그래밍 언어를 위한 다양한 API를 제공
  • MySQL은 유닉스, 리눅스, 윈도우 등 다양한 운영체제에서 사용할 수 있으며, 특히 PHP와 함께 웹 개발에 자주 사용된다. 그러나 MySQL은 오픈 소스 라이센스를 따르기는 하지만, 상업적으로 사용할 때는 상업용 라이센스를 구입해야만 한다.

MariaDB

  • MariaDB는 MySQL 데이터베이스 시스템을 기반으로 fork한 서비스로 MySQL의 개선된 버전이다. 그래서 MariaDB와 MySQL의 호환성은 매우 높다. (공식문서 참고) 또한 MySQL에서 찾을 수 없는 수많은 내장된 강력한 기능과 많은 유용성, 보안 및 성능 개선사항이 함께 제공된다.

어떤 RDS DB를 사용하는 것이 적절할까?

많은 RDS에는 MySQL, MariaDB, PostgreSQL 중에 고르는 것이 좋다. 이유는 두 가지이다.

  1. 가격
  2. Amazon Aurora(오로라) 교체 용이성

RDS의 가격은 라이센스 비용 영향을 받는다. 상용 DB인 MySQL이 오픈소스인 MariaDB, PostgreSQL보다는 동일 사양 대비 가격이 더 높다. 프리티어 기간이 지나면 비용을 지불하면서 RDS를 사용해야하므로 미리 비용에 관련해 생각해 볼 필요가 있다.

두 번째로는 Aurora 교체 용이성이다. Amazon Aurora는 AWS에서 MySQL과 PostgreSQL을 클라우드 기반에 맞게 재구성한 데이터베이스이다. 공식 자료에 의하면 RDS MySQL 대비 5배, PostgreSQL보다 3배의 성능을 제공한다. 더군다나 AWS에서 직접 엔지니어링하고 있기 때문에 계속해서 발전하고 있다. 이렇게 보면 Aurora가 좋아보이지만 최소 월 10만 이상이기 때문에 가격에서 부담스럽다.

MySQL vs MariaDB 비교

MariaDB는 MySQL기반으로 만들어졌기 때문에 쿼리를 비롯한 전반적인 사용법은 MySQL과 유사하니 사용 방법에 대해서는 크게 걱정하지 않아도 된다. 비슷한 사용법 외에도 MariaDB는 MySQL 대비 더 좋은 장점이 있다. 10 reasons to migrate to MariaDB (if still using MySQL) 2015년에 현 AWS개발자가 MariaDB를 사용해야 할 10가지 이유를 제시했다.

  1. MariaDB 개발이 좀 더 개방적이고 활발한 커뮤니티를 지님
  2. 빠르고 투명한 보안패치 릴리즈
  3. 다양한 기능
  4. 다양한 스토리지 엔진
  5. 더 나은 성능
  6. Galera 액티브-액티브 마스터 클러스터링
  7. 오라클 관리하의 불확실성
  8. 계속 상승하는 MariaDB의 유명세
  9. 호환성과 쉬운 마이그레이션
  10. 15년 이후에는 마이그레이션이 어려울 수 있다

MariaDB 공식문서에도 친절히 MySQL과의 비교를 보여주고 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스'책에서도 MariaDB의 장점을 보여준다. 이 내용들을 참고하면 현재 MariaDB의 장점은 5가지로 요약할 수 있다.

  • 동일 하드웨어 사양으로 MySQL보다 향상된 성능
  • 좀 더 활성화된 커뮤니티
  • 다양한 기능
  • 다양한 스토리지 엔진
  • 빠르고 투명한 보안패치 릴리즈

-> 따라서 비용이 저렴하고 조금이나마 성능이 좋다고 하는 MariaDB를 프로젝트에 사용하기로 결정하였다.

참고 사이트

profile
스스로 성장하는 개발자가 되겠습니다.

0개의 댓글