"마리아DB, 마이SQL과 동반 성장"

카카오 엔지니어 성동찬씨의 경험기


마이SQL의 창시자가 개발을 주도하는 오픈소스 관계형데이터베이스(RDB) '마리아DB'는 구글, 레드햇 등의 지지를 받으며 가파른 성장세를 보여왔다. 

마이SQL이 오라클로 넘어가면서 종속을 우려하는 개발자들 사이에서 마이SQL의 대안으로 부상했다는 얘기도 들린다. ‘마리아DB’는 과연 실전에서 어느정도 가치가 있을까?

최근 ‘마리아DB 실전 활용 노하우(한빛미디어, 9900원)’란 전자책을 저술한 카카오의 데이터베이스관리자(DBA) 성동찬 씨를 만났다. 카카오는 국내에서 가장 적극적으로 마리아DB를 도입한 대표적인 기업이다. 성동찬 씨는 카카오에서 마리아DB를 직접 테스트하고 사용하면서 겪었던 경험을 책에 담았다. 

그의 책은 마리아DB 설치 방법을 간단히 소개하고 마리아DB와 마이SQL의 차이점을 설명한 뒤 실제 경험사례와 유용한 유틸리티를 소개하는 식으로 꾸며졌다. 

성동찬 씨는 “마리아DB는 마이SQL을 잘 활용해온 사람이라면 쉽게 접근할 수 있는 DB라고 생각한다”라며 “아키텍처, 사용 매뉴얼까지 마이SQL과 유사하기 때문에 마리아DB에 대해 어렵게 느꼈던 사람의 진입장벽을 허물어주기 위해 집필을 결정했다”고 말했다. 

또 “오히려 마이SQL과 거의 유사하다는 점에 처음 마리아DB 책을 써보자는 제안을 받았을 때 겹치는 내용을 적을 수는 없어서 무슨 내용을 넣어야 할 지 고민했을 정도”라고 설명했다. 

마리아DB는 마이SQL의 창시자인 마이클 몬티 위드니우스의 주도로 개발된 오픈소스 DB다. 오라클의 썬 인수로 마이SQL의 소유권이 오라클로 넘어간 뒤 만들어졌다.

같은 창시자를 가진 만큼 마리아DB는 마이SQL과 쌍둥이란 소리를 들을 정도로 유사하다. 마리아DB는 마이SQL과 동일한 코드에 기반했고, 사용방법과 구조가 같으며 마이SQL과 바이너리호환성 99.99%를 제공한다. 마리아DB란 명칭도 위드니우스의 딸 이름에서 따왔다는 점에서 마이SQL과 같다. 

위드니우스는 오라클이 썬을 인수한 뒤 마리아DB를 만들고, 몬티프로그램을 설립해 마리아DB 지원과 유지보수 서비스를 제공했다. 2009년 스카이SQL이란 회사는 마리아DB의 상용 서비스 활용에 대한 지원을 제공한다. 스카이SQL은 올해 4월 몬티프로그램을 인수했다. 

마이클 몬티 위드니우스는 “마리아DB는 이노DB 스토리지 엔진을 제외한 마이SQL에 있는 기능 대부분이 썬 때 있었던 기능들”이라며 “오라클 인수 후 마이SQL은 발전하지 않았고, 오라클은 ‘마이SQL을 어떻게 하면 자신들의 소유로 할 수 있을까’만 고민했고, 그래서 회사를 나왔다”라고 밝혔었다. 

결국 마리아DB는 스토리지엔진을 제외하면 마이SQL 5.5버전과 동일한 기능을 제공하고, 바이너리호환성도 100%에 가깝다. 다만, 마리아DB는 오라클 소유인 이노DB를 대체하기 위해 여러 스토리지 엔진을 옵션으로 제공한다. 마리아DB는 마이ISAM, 블랙홀, CSV, 메모리, 아카이브 등 마이SQL에서 지원했던 주요 오픈소스 스토리지엔진 지원기능을 포함한다. 

성동찬 씨도 마리아DB의 스토리지엔진에 적지 않은 분량을 할애했다. 엑스트라(Xtra)DB, 아리아(Aria), 페더레이티드엑스(FederatedX), 토쿠(Toku) DB 등에 대한 설명을 책에 집어넣었다. 

써보면서 발견했던 마리아DB의 수많은 버그에 대한 설명도 곁들였다.

그는 “최근 버전에서 해결된 문제인데, 큰 테이블에서 데이터를 추출할 때 특별한 카운트만 뽑고 싶을 때 조회를 날리면 어떤 경우 데이터가 있어도 0건으로 추출됐다”라며 “당시 메모리 테이블 사이즈 제한을 늘려 돌아가게 했다”라고 일화를 소개했다. 

그는 “마리아DB의 버그는 대부분 카운트에 대한 부분으로 개인적으로 마리아DB가 아리아 스토리지엔진을 내부 테이블로 넣으면서 생기는 버그가 아닐까 추측하고 있다”라며 “DB 링크와 같은 역할을 하는 페더레이티드DB는 트랜잭션까지 할 수 있게 해 좋지만, 여전히 많은 데이터를 처리하기에는 쿼리 사용 시 주의할 점도 있어서 위험하다. 하지만 많이 개선되고 있다”는 의견을 덧붙이기도 했다.

기본적인 설명 이후 나오는 여러 유틸리티에 대한 부분도 흥미롭다. 그는 자신이 직접 테스트한 내용을 집어넣었다. 마이SQL과 마리아DB에서 모두 쓸 수 있는 유틸리티 가운데, 직접 써보면서 큰 문제없이 서비스에 유용할 거라 생각되는 걸 넣었다. 

마리아DB는 사실 오라클의 오픈소스 마이SQL에 대한 배타적인 모습에 반발해 만들어졌다. 때문에 마이SQL과 마리아DB가 배타적 경쟁관계로 보이기도 한다. 위키피디아가 마이SQL에서 마리아DB로 바꿨고, 레드햇, 수세 등의 리눅스도 기본DB를 마리아DB로 변경했다. 작년 전세계 최대 규모 마이SQL 사용자인 구글이 마리아DB로 변경하겠다고 밝히기도 했다. 

성동찬 씨는 두 기술에 대해 제로섬게임은 아니라는 입장을 보였다. 다만 전체적인 퍼포먼스 측면에서 마리아DB의 우세를 조심스럽게 밝혔다. 

그는 “마이SQL과 마리아DB는 배타적이기보다 상호 간에 상승효과를 주면서 함께 발전하고 있다”라며 “마리아DB에 없는 기능이 마이SQL에 있기도 하고, 서로의 새로운 시도를 벤치마킹하면서 추가하는 등 각자 발전하는 모습이다”라고 강조했다. 

그러나 “동일한 측정장비가 없어 성능 비교를 거론할 수는 없지만, 스레드풀처럼 마이SQL에 있다가 사라진 기능을 마리아DB에선 제공한다든지 여러 측면에서 마리아DB가 낫다고 본다”라며 “SSD를 가장 먼저 적용하려 하는 모습처럼 새로운 기술을 빠르게 채택하고 지원하려는 모습은 마리아DB의 미래가 마이SQL보다 더 좋다고 볼 수 있는 부분”이라고 말했다.

마이SQL과 마리아DB가 서로 발전하는 부분에는 빅데이터도 있다. 

그는 “토쿠DB는 마이SQL에서 빅데이터에 접근하기 위해 만든 엔진으로 프랙탈 인덱스로 접근해서 많은 데이터 변경사항의 I/O를 줄이면서 빠르게 데이터를 쓰고, 일정 압축도 제공해 메모리 효율적으로 사용하는 것”이라며 “로그수집서버에 적용해도 좋은 용도라는 게 결론”이라고 설명했다. 

또  “둘 중 하나만 남기보다 사용자 용도에 맞게 계속 함께 갈 것이라 본다”라며 “오히려 OLTP에 있어선 오라클DB보다 마이SQL과 마리아DB의 성능이 낫고, 소셜네트워크(SNS)의 경우 라이선스에서 두 솔루션 다 절대적인 우위를 갖는다”고 덧붙엿다.

성동찬 씨는 현재 네이버 카페 ‘MySQL Power Group’이란 커뮤니티에서 활동중이다. 작년말 만들어진 마이SQL 전문 커뮤니티로 활발한 의견교류와 고급정보 공유가 이뤄지고 있다고 소개했다. 

그의 책 ‘마리아DB 실전 활용 노하우’는 아직 완결된 상태는 아니다. 현재 최종수정작업을 진행중으로 이달말이나 다음달초 최종본이 출간될 예정이다.

(출처: http://www.zdnet.co.kr/news/news_view.asp?artice_id=20140217111932)

백세시대에 접어들며 건강에 대한 관심이 그 어느 때보다 높다. 높은 관심을 반영하듯 해마다 새로운 건강정보가 등장해 유행하고 있지만, 10년, 20년 따라 할 수 있는 건강법을 찾기란 쉽지 않다.

보다 쉽고 지속적으로 유지할 수 있는 건강법을 찾고 있다면, 미국의 유명 자기계발서 작가인 톰 래스(Tom Res)의 신간 <잘 먹고 더 움직이고 잘 자라(Eat Move Sleep)>를 눈여겨보는 것은 어떨까?

열여섯 살에 희소 유전병으로 한 쪽 눈을 실명한 톰 래스는 평생을 암과 싸워온 환자이기도 하다. 그는 선천적으로 취약한 자신의 유전자에 절망하는 대신 건강하게 오래 살 확률을 높이기 위한 공부를 시작했다. 그리고 질병과 건강에 관한 400여 가지의 문헌을 분석하고 스스로를 대상으로 한 임상 실험을 참고하여 건강의 법칙을 도출해냈다.

저자가 주장하는 건강 비법은 단순하다. 잘 먹고 잘 자는 것이 보약이라는 옛말처럼, 잘 먹고 더 많이 움직이고 잘 자는 방법을 배우고 선택하면 건강하게 오래 살 확률이 높아진다는 것.

저자는 “한 가지 행동만으로 암을 물리치거나 장수를 보장할 수는 없다.”고 단호하게 이야기하며, 식사, 활동, 수면이 우리 몸에 어떤 영향을 미치는지를 사례별로 소개한다. 그리고 건강의 가장 기본이 되는 요소인 식사, 활동, 수면이 종합적으로 맞물릴 때 우리는 가장 건강한 상태를 유지할 수 있음을 강조하고, 건강한 생활 습관을 만들 수 있는 30일 액션 플랜을 제시한다.

가령 음식 섭취 시 몸에 좋은 음식을 먼저 먹고, 눈에 잘 띄는 곳에 건강한 음식을 놓아두는 것만으로도 몸에 덜 좋은 음식 섭취량을 줄일 수 있다. 또, 엘리베이터 대신 계단을 이용하거나, 입구에서 멀리 떨어진 곳에 차를 세우는 것부터 시작한다면 당신은 최소한 어제보다 더 움직일 수 있다. 이렇듯 톰 래스가 제시한 실천 방법은 누구나 따라 할 수 있을만한 것들이다.

또, 많은 사람들이 조금 더 많은 활동을 위해 잠을 줄이고 있지만 양질의 수면만큼 건강에 중요한 것은 없다며, 8시간 이상 충분한 수면의 중요성을 피력한다. 저자는 다양한 연구자료를 토대로 수면과 건강, 효율성의 관계를 증명하고, 수면은 몸을 재충전하기 위한 중요한 과정이며 투자임을 잊지 말기를 당부한다.

저자는 얼핏 보면 사소하고 하찮게 보일 수 있으나, 일상에서 나쁜 결정보다 좋은 결정이 많으면 건강한 노년을 보낼 가능성이 한층 높아진다고 이야기한다. 얼마나 오래 사느냐는 부모님이 얼마나 오래 살았는지 보다 어떻게 사는지에 더 크게 좌우된다는 것.

건강의 기본은 단순함이라는 저자의 주장을 되새기며 작은 생활 습관부터 하나씩 바꿔보는 것은 어떨까? 건강한 선택이 하루하루 모인다면 진정한 백세시대를 기대할 수 있을 것이다.

* 출처: http://books.chosun.com/site/data/html_dir/2014/02/17/2014021702758.html

나는 일러스트레이터다의 저자 밥장,

4년만에 개정판으로 여러분을 찾아갑니다.

초판 500부 한정 각설탕 천사를 정성껏 그리고 있는 모습을 동영상으로 만나보세요.


+ Recent posts