[마소콘 2019] 9년차 빅데이터 엔지니어가 들려주는 '몽고DB' 이야기

입력 2019.11.23 18:49 | 수정 2019.11.27 10:49

"짧은 시간에 실력을 늘리는 가장 좋은 방법 중 하나는 ‘덕업일치’입니다. 자신이 좋아하는 주제를 바탕으로 연습한다면 재미있게 할 수 있습니다."

김인범 씨엔시티에너지 빅데이터 엔지니어가 동료 개발자에게 건넨 조언이다. 그는 국내 유일의 소프트웨어 전문지인 마이크로소프트웨어가 서울 상암동에서 23일 개최한 ‘마소콘 2019’에서 몽고DB를 사용하며 느낀 점을 공유했다.

김인범 씨엔시티에너지 빅데이터 엔지니어가 발표하고 있다. / 장미 기자
몽고DB는 오픈소스 소프트웨어로, 크로스 플랫폼 문서 지향 데이터베이스 시스템이다. 전통적인 테이블 기반 관계형 DB와는 다르다.

김인범 엔지니어는 IT서비스 선두기업에서 9년 근무했고 최근 씨엔시티에너지(前 충남도시가스)로 이직했다.

몽고DB는 하둡과 마찬가지로 분산형 저장 데이터베이스인 ‘NoSQL’의 일종이다. ‘몽고’라는 이름 덕에 몽골이 언급되지만 관련이 없다. 거대한이라는 의미를 지닌 영어 단어 ‘휴몽거스(humongous)’에서 이름을 따왔다. 거대한 데이터를 담기 위한 DB라는 의미다.

몽고DB를 비롯한 NoSQL은 2000년대 후반 ‘클라우드 컴퓨팅’이라는 개념이 대두하면서 각광받기 시작했다. 클라우드 컴퓨팅은 정보를 자신의 컴퓨터가 아닌 클라우드에 연결된 다른 컴퓨터로 처리하는 기술이다.

이에 더해 업계에서 많이 활용하던 ‘오라클’보다 저렴하게 활용할 수 있다는 점 때문에 몽고DB의 인기가 높아졌다. 김인범 엔지니어는 "오라클은 사용량이 높아지면 비용도 늘어나는 구조지만, 몽고DB는 오픈소스 기반이라 비용 면에서 한층 저렴하게 활용할 수 있다"고 설명했다.

몽고DB 로고. / 몽고DB 제공
다만 초기에는 DB자체도 불안정하고, 문법이 일반적인 DB 문법보다는 오히려 개발자가 자주 쓰는 자바스크립트 문법과 흡사한 면이 있었다. 참고자료라고 할만한 것도 인터넷 상에서는 찾기 어려워 커뮤니티에서 직접 교류하며 알아내야만 했다. 2019년까지도 몽고DB만 다루는 전문 인력과 업체를 찾아보기가 힘들 정도다.

몽고DB가 뭐냐고 묻던 과거와 비교하면 환경이 나아졌다. 공공, 금융, 게임 등 다양한 산업분야 참고자료가 등장했고, 몽고DB는 안정화 단계에 들어섰다. 인터넷 상에서도 영문이기는 하지만 참고자료를 찾아볼 수 있는 단계가 됐다.

김인범 엔지니어는 "그래도 커뮤니티 활동은 꾸준히 하는 것이 좋다"며 "실제로 몽고DB를 이용하면서 느낀 단점과 시행착오 과정 등 정보를 얻을 수 있기 때문이다"고 조언했다.

몽고 DB는 6개월쯤 주기로 지속적으로 기능을 추가하며 발전했고, 최근에는 개별 제품을 넘어 하나의 플랫폼으로 진화하는 모습을 보인다.

다만 이 과정에서 발생하는 단점도 있다. 김인범 엔지니어는 "한 번 업데이트할 때마다 기존에 사용하던API의 기능이 바뀌거나, 사라지기도 한다"며 "이 탓에 일일이 API의 기능이 정상인지 확인해야해서 불편한 점도 있다"고 설명했다.

김인범 엔지니어는 체계적인 문서 구성을 몽고DB의 장점으로 꼽았다. 이 덕에 입문자가 참고하기에도 좋고, 콘텐츠도 최근들어 굉장히 많아지고 있다는 것이다. 그는 "빠르게 설치하고 프로토타입을 제작하기 좋다는 장점도 있다"며 "실제로 미국 대학생 해커톤에서 몽고DB는 가장 많이 쓰는 도구 중 하나다"고 설명했다.


키워드