brunch

You can make anything
by writing

C.S.Lewis

by 고코더 Jan 13. 2022

돌고래 VS 물개, 무료 데이터베이스의 전쟁

MySQL vs MariaDB

* 책으로 출간되었습니다.

해당 브런치에 남김 글은 초고입니다. 완성된 작품은 해당 "오늘부터 IT를 시작합니다."로 출간하였습니다!!

구매하여서 완성된 글을 종이책의 정감과 편안함으로 읽어보시길 바랍니다^^ 

감사합니다.!!

http://www.yes24.com/Product/Goods/111417594



다음 동물 중 누가 더 셀까요?


돌고래


첫 번째 동물은 '돌고래'입니다. 포유류이자 이빨고래류의 한 종류로 매우 영리한 포유동물입니다. 거울에 비친 자신을 모습을 인식하는 몇 안 되는 동물이기도 합니다. 인간의 7~8세 유아 정도의 지능을 가지고 있다는 연구 결과가 있습니다.  돌고래의 몸은 유선형이어서 물속에서 재빠르게 잘 움직입니다. 그리고 청각이 매우 발달되어서 음파 탐지 능력으로 먼 거리의 물체를 암파로 알아챌 수 있습니다. 시력도 좋고, 피부의 촉각도 잘 발달되어 있습니다. 


물개


두 번째 동물은 '물개'입니다. 역시 포유류이자 바다사 자과에 속한 종에 속합니다. 서식지는 해변가이며 바위가 많은 지역을 선호합니다. 북부 물개는 체중이 무려 300kg에 달하고, 길이는 3m 나 됩니다. 거대한 몸집으로 힘이 매우 쎄, 성인 남성도 입으로 물어 가볍게 패대기 칠 수 있을 정도로 피지컬이 대단한 동물입니다. 



돌고래 VS 물개 승자는?


하지만 다행히 두 동물이 만나서 싸울 일은 없습니다. 돌고래는 바닷속에서 살고, 물개는 물 밖에 살고 있기 때문에 마주 칠일도 없습니다. 만약 싸움을 붙여 놓아도 영리한 돌고래가 바닷속 깊은 곳으로 도망가버릴 것입니다. 그래도 우열을 따져본다면 개인적으로는 그래도 물개가 좀 더 세지 않을까라고? 조심히 추측해봅니다. 그런데 IT 이야기에 웬 바다 동물들이 등장했을까요? 갑자기 이런 비교하는 글을 쓰는 이유는 무엇일까요? 무료 데이터베이스의 최강자 MySQL과 MariaDB의 로고가 각각 이 동물들을 채택하고 있기 때문입니다.




무료 데이터베이스의 대표 주자



욕심 많은 개발자들이 판교에 한 작은 사무실에 모였습니다. 새로운 서비스를 론칭을 하기 위해서입니다. 그러던 중 데이터베이스 제품을 두고 고민이 시작됩니다. 스타트 기업 특성상 최소한의 비용으로 최대한의 효과를 내기 위해 무료 관계형 데이터베이스를 선택하기로 합니다. 이때 고코더 사원이 발언합니다. "마리아 DB"를 사용해보는 건 어떨까요? 그러자 옆에 있던 또 다른 개발자가 용기 내어 말합니다. 이왕이면 "마이SQL"이 좀 더 낫지 않을까요? 그러자 사장님이 되묻습니다. "두 개가 뭔 차이야?" 그러자 사무실은 다시 조용해집니다. 두 제품의 특징을 모른다면 일어날 수 있는 재밌는 상황입니다. 당황하지 않을 수 있게 두 제품의 차이점은 또 무엇인지? 또 어떤 점이 다른지? 차례대로 알아보겠습니다.



세상에서 가장 많이 사용하는 DBMS, MySQL

개발자들이 가장 많이 사용하는 데이터베이스 제품이 무엇일까요? 바로 MySQL입니다. 이 제품은 오픈소스의 관계형 데이터베이스 다중 스레드, 다중 사용자 형식의 구조 질의어 형식의 데이터베이스 관리 시스템입니다. 1995년 설립된 스웨덴의 소프트웨어 회사 'MySQL AB'사가 만든 제품입니다. 회사를 창립한 '몬티 와이드니어스(Monty Widenius)'는 데이터베이스의 오픈 소스 운동을 주도하였습니다. 이는 누구든지 무료로 관계형 데이터 베이스를 사용하게 만들자는 취지였습니다. 1996년 드디어 몬티는 Unireg의 ISAM에 데이비드 휴즈(David Hughes)의 'MSQL'을 참고해 MySQL 버전 1.0을 발표합니다. 그리고 2001년 '헤이키듀리(Heikki Tuuri)'가 만든 'InnoDB'를 포함한 오늘날의 모습과 가장 가까운 트랜젝션을 처리하는 'MySQL'이 출시됩니다. 


MySQL의 로고가 돌고래가 된 이유는 매우 단순합니다. 개발자 '몬티'가 돌고래를 좋아하는 이유였습니다. 빠르고, 지능적이고, 친절하고 무리 활동으로 나쁜 상어를 무찌른다는 이유로 돌고래로 결정이 납니다. 초안은 돌고래가 왼쪽에서 오른쪽으로 점프하는 모양이었습니다. 컴퓨터의 글쓰기 진행 방향과 같게 하기 위해서였습니다. 하지만 몬티는 좀 더 파격적인걸 원했고, 반대로 점프하기를 원해서 지금의 로고가 완성되었습니다. 그리고 My는 자신의 첫 번째 딸 '마이 와이드니어스(my Widenius)'에 따와서 지었습니다. 그리고 돌고래 이름은 'Sakila'는 별명을 붙여주었습니다. 



돌고래에서 물개로. MariaDB



오라클은 ‘MySQL을 어떻게 하면 자신들의 소유로 할 수 있을까’만 고민했고, 그래서 회사를 나왔습니다. - 몬티 - 


2008년 몬티는 MySQL을 '썬 마이크로시스템즈에' 10억 달러에 매각하였습니다. 그 덕분에 몬티는 핀란드에서 10대 갑부 중 한 명이 되었습니다. 하지만 문제가 생겼습니다. 2001년 1월 '오라클(Oracle)'이 다시 이 회사를 인수하게 되었습니다. 상황은 이상하게 흘러갑니다. 오픈소스를 추구했던 MySQL은 폐쇄적인 방향으로 끌려갑니다. 우선 상업용 버전과 무료 버전을 나누는 라이선스를 적용하고 차이를 둡니다. 기술지원을 받기 위해서는 상용 버전을 구매해야 하는 사소한 차별을, 그리고 소극적인 제품 개발로 업데이트가 늦어지면서 '몬티'는 자식처럼 생각하는 돌고래 데이터베이스가 제대로 관리되지 않는 것처럼 느껴합니다. 불편한 기색을 드러낸 몬티는 결국 회사를 나옵니다. 그리고 그는 재단을 세워 MySQL을 대신할 수 있는 또 다른 오픈소스 RDBMS를 만듭니다. 바로 물개 'MariaDB'입니다. 이번에는 둘째 딸 '마리아 와이드니어스(Maria Widenius)' 이름을 따오고, 로고는 돌고래와 사뭇 다른 느낌의 물개가 왼쪽에서 오른쪽으로 전진하고 있습니다. 


2009년 썬을 떠난 동료들과 함께 몬티는 'Monty Program AB'사를 설립하였습니다. 초창기 버전은 MySQL 5.5 버전을 기반으로 복사하여 사용하였고 모든 기능은 동일하게 호환되었습니다. 하지만 MariaDB는 속도를 앞서 나가길 원했고, 10.x라는 버전으로 숫자를 달리하여 오히려 먼저 개발된 MySQL보다 개발 속도를 앞세워서 반대로 MariaDB의 기능을 따라오도록 하였습니다. 물개가 돌고래를 이기게 된 순간입니다. 



치열한 전쟁에서 선택은 개발자의 몫

 

돌고래와 물개 싸움은 더 좋은 관계형 데이터베이스를 탄생시켰습니다. 하지만 이 싸움은 나쁜 것이 아닙니다. 서로를 자극할 수 있는 좋은 싸움입니다. MySQL은 오라클이라는 서비스를 기대할 수 있으며, MariaDB는 몬티 재단이 이끄는 최고의 개발자 사단의 능력으로 성능 좋은 데이터베이스를 사용할 수 있습니다. 현재 무료 관계형 데이터베이스의 저울은 MariaDB 쪽으로 많이 이동하고 있습니다. 대표적인 레드헷 운영체제 페도라 MySQL을 버리고 19 버전부터 마리아 DB를 채택하였습니다. 이러한 이동은 거대한 기업을 중심으로 연속적으로 일어나고 있습니다. 


돌고래와 물개의 싸움은 결국 데이터베이스의 발전과 성장을 가져왔습니다. 몬티가 가진 철학은 사라질 위기에 무료 데이터베이스 시장의 불씨를 되살렸습니다. 개발자의 가장 멋진 모습 중 하나가 바로 이러한 철학을 가진 자의 용기가 아닐까 생각합니다. 지금도 관계형 데이터베이스의 전쟁은 계속되고 있습니다. 하지만 이 전쟁을 지켜보면서 우린 무엇을 느낄 수 있을까요? 저는 오랫동안 코딩을 하면서 당장 눈앞에 프로젝트만을 바라보고 살아온 건 아닌지 생각합니다. 몬티처럼 IT라는 거대한 생태계에 혁신이라는 전쟁을 일으킬 수 있는 꿈을 꾸고 싶다는 생각이 듭니다. 



오라클과 몬티의 치열한 전쟁을 보면서 당신은 어떤 생각이 드시나요?
어떤 분야에서 싸워보고 싶으신가요?




* 참조자료

https://www.guru99.com/mariadb-vs-mysql.html

https://kinsta.com/blog/mariadb-vs-mysql/

https://blog.panoply.io/a-comparative-vmariadb-vs-mysql

매거진의 이전글 데이터베이스계의 악동 "NoSQL"
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari