비트나인 테크니컬 라이터(Technical Writer) 서준섭 과장

비트나인 테크니컬 라이터 서준섭 과장
비트나인 테크니컬 라이터 서준섭 과장

[아이티데일리]  여느 오픈소스 소프트웨어(SW)처럼 오픈소스 DBMS도 잘 활용한다면 비즈니스에 큰 도움이 될 수 있다. 그러나 ‘돌다리도 두들겨 보고 건너라’는 말처럼, 오픈소스 DBMS도 좋아보인다고 바로 사용해서는 낭패를 볼 수 있다. 숨겨진 비용, 보안성, 라이선스 정책 등과 같은 중요한 요소들을 반드시 확인하고 도입해야 한다.

장점만을 보고 성급히 도입할 경우 장기적으로 큰 문제를 야기할 수도 있다. 상용 DBMS에서는 기본적으로 제공되는 기능과 서비스들이 오픈소스 DBMS에서는 제공되지 않는 경우가 많다. 특히 기업이 직접 소유하지 않기 때문에 주의 깊게 확인하고 넘어가야 할 부분들 또한 많다.

오픈소스 DBMS를 선택하기 전에 반드시 확인해야 할 사항들은 다음과 같다.


1. 숨겨진 비용

오픈소스 DBMS의 가장 큰 장점 중 하나는 상용 버전에 비해 비용을 절감할 수 있다는 점이다. 하지만 운영하는 데 예상하지 못한 비용이 발생할 수 있다. 이런 점을 고려하지 않을 경우 추후에 큰 부담으로 작용할 수 있다.

개인이나 기업이 무료 또는 오픈소스 DBMS를 도입하기 전에 아래와 같은 항목들을 점검하고 잠재적인 비용까지 고려해야 한다.

오픈소스 DBMS의 숨겨진 비용
오픈소스 DBMS의 숨겨진 비용

2. 제품의 보안성

오픈소스가 보안에 취약하다는 것은 널리 알려진 사실이다. 기업 또는 기관들이 무료 데이터베이스를 도입했음에도 DB 접근 제어 및 DB 암호화 같은 보안 서비스는 유료로 선택하는 경우가 많은 것도 이런 이유에서다. 데이터 유출 사고는 기업이나 기관의 평판에 치명적일 수 있다. 특히 법적, 금전적 문제가 뒤따를 수 있기 때문에 보안에 대해서는 반드시 확실하게 준비해야 한다.

상용 DBMS의 경우 보안 취약점이 발견되면 제조사에서 즉시 해결할 수 있지만, 오픈소스는 그렇지 않다. 오픈소스는 누구나 접근이 가능하므로, 보안 취약점이 발견되면 그 즉시 ‘익스플로잇-킷(Exploit-kit)’이라는 해킹 도구에 등록돼 해커들의 표적이 될 수 있다1. 실제 과거에는 세계 최대 성인 소셜 웹사이트의 모기업에서 4억 1,200만 개의 사용자 계정이 유출된 사건이 있었는데, 이 때 해킹된 데이터베이스 중 하나가 오픈소스 DBMS였다2.

DBMS의 취약점을 빠르게 해결하지 못하면, 기업은 장기간 보안 위험에 노출될 수 있다. 이런 보안 관련 위험 요소를 피하려면, 설치 전후에 코드 특성을 포함해 소스 코드 저장소, 릴리즈 빈도 등의 프로젝트 특성을 확인해야 한다.


3. 기존 시스템과의 호환성 검토

오픈소스 DBMS에 대한 인식이 개선되면서 오라클과 같은 상용 DBMS 대신 오라클과 친화적인 오픈소스 DBMS인 포스트그레SQL을 검토하는 기업이 늘고 있다.

기존 DBMS에서 오픈소스 DBMS로 전환할 때 반드시 확인해야 할 것은 기존 시스템과의 호환성이다. 데이터 이관이 불가능하거나 쿼리문을 인식하지 못하는 경우는 대체로 호환성 문제일 가능성이 높다. 기존 시스템과 호환되지 않으면 업무 효율성이 저하되거나 심지어 업무가 중단될 수도 있다. 그러므로, 오픈소스 데이터베이스를 고려할 때는 기존 시스템과의 호환성이 원활한지 반드시 확인해야 한다.


4. 라이선스 및 법적 문제에 대한 이해

프로젝트에 오픈소스를 도입할 때는 라이선스 조건에 특별히 주의해야 한다. 상용 DBMS와 마찬가지로 오픈소스를 사용하려면 해당 오픈소스의 라이선스를 반드시 준수해야 한다. 이를 위반해 적발될 경우, 사용 권리가 박탈되거나 해당 오픈소스를 이용해 제품화한 제품을 아예 판매할 수 없게 될 수도 있다. 라이선스 위반은 법적 위험 요소를 수반한다. 따라서 오픈소스 코드를 사용하는 담당자는 라이선스 조건을 정확하게 이해하고, 문장에 내포된 의미까지 파악해 법적 위험을 최소화해야 한다.

대표적인 예로, DBMS를 포함한 대부분의 오픈소스 라이선스는 원저작권자의 표시를 요구한다. 이런 요구사항을 제대로 이행하지 않은 몇몇 국내 기업들은 다른 기업의 특허 기술을 사용하다가 법적 분쟁에 휘말린 적이 있다3. 또한, 정보통신산업진흥원(NIPA)이 2021년에 발간한 오픈소스 실태조사 보고서에 따르면, 국내 기업의 공개SW 활용률인 61% 중에서 내부 소스코드를 공개하지 않은 경향이 강했으나4, 2022년 실태조사 보고서에서는 내부 소스코드 공개도가 1년 전에 비해 24% 늘었다5. 재배포를 허용하는 라이선스(BSD)와 그렇지 않은 라이선스(GPL)가 있지만, 오픈소스의 특성상 소스코드 사용, 수정, 배포를 할 경우 이에 대해 공개해야 하는데, 아직까지는 내부 소스코드를 공개하지 않는 곳이 많다.

또한 많은 기업 및 기관들이이 인지하지 못하는 부분 중 하나는 오픈소스에 대한 보증(warranty)이다. 오픈소스 라이선스는 일반적으로 제한적인 보증만 포함하고 있을 뿐 책임을 지지는 않는다. 그러므로 사용 중인 오픈소스 DBMS가 알 수 없는 이유로 중단될 경우, 이에 대한 보증을 받는 것은 거의 불가능하다. 그러므로 중요한 서비스를 운영하는 기업이라면 추가 비용을 지불하더라도 해당 오픈소스 DBMS를 다루는 전문 업체를 찾아 기술 지원을 받는 것이 좋다.


5. 선(先) 기능 파악, 후(後) 개발

오픈소스 DBMS에는 다양한 기능을 제공하는 플러그인이 많다. 이들을 활용하지 않고 처음부터 필요한 기능을 개발하는 것은 많은 자원을 소모할 수 있다. 그래서 오픈소스 DBMS를 검토할 때는 프로젝트에 필요한 기능이 있는지 확인하는 것이 좋다.

국내의 한 지자체에서는 도시공원의 시설물 관리 시스템을 구축하기 위해 오픈소스 DBMS를 요구하는 제안요청서를 제출했다. 그 요구사항 중 하나가 포스트그레SQL이었는데, GIS라는 플러그인이 있었기 때문이었다. 포스트GIS(PostGIS)는 데이터베이스에 지리적 정보 객체를 저장할 수 있도록 하는 무료 플러그인이다. 공원의 시설물 유지보수를 관리하기 위해 공간정보 기반의 데이터 수집이 필요했기 때문에, 해당 지자체는 포스트그레SQL을 우선적으로 검토한 것이었다.

이 경우가 바로 오픈소스의 장점 중 하나인 ‘빠른 개발 속도’를 보여주는 예다. 이미 공개적으로 구현된 기능이 있는지 파악한 후에 프로젝트를 진행하는 것이 효율적이다.


6. 준비된 기술 문서의 유무

오픈소스 DBMS를 사용하기 위해서는 먼저 해당 소프트웨어를 이해해야 한다. 상용 제품의 경우 모든 가이드 문서가 제공되지만, 오픈소스의 경우는 온라인 검색을 통해 자료를 찾아봐야 한다. 특히 오픈소스 DBMS의 설치, 설정 및 유지보수를 위한 기술 문서가 잘 정리돼 있는지 확인하는 것이 매우 중요하다. 문서가 오픈소스 DBMS를 이해하는 데 중요한 이유는 다음과 같다.

문서화된 가이드라인: 오픈소스 DBMS의 설치, 설정 및 유지보수는 복잡한 과정을 포함하고 있다. 이러한 과정을 단계별로 안내하고, 필요한 설정 및 구성 옵션에 대한 설명이 포함된 문서는 사용자에게 유용한 가이드라인이 된다. 이를 통해 사용자는 DBMS를 올바르게 사용할 수 있다.
개발자 지원: 문서는 개발자들이 소스코드를 이해하고 수정하는 데 도움을 줄 수 있다. 또한, 개발 환경 설정 및 테스트 방법에 대한 가이드를 제공해 개발자들이 효율적으로 작업할 수 있도록 한다.
업데이트 및 버그 수정: 오픈소스 DBMS는 업데이트를 통해 버그를 수정한다. 문서는 새로운 버전의 DBMS를 설치하고 이전 버전에서 업그레이드하는 방법을 안내하며, 버그가 발견될 경우 해당 버그를 신속하게 수정하는 방법을 포함하고 있다. 이를 통해 사용자는 최신 버전의 DBMS를 안정적으로 유지하고 사용할 수 있다.


오픈소스를 안전하고 효율적으로 사용하는 방법

여기에서는 지금까지 언급한 고려 사항들을 바탕으로 오픈소스를 안전하고 효율적으로 사용하는 방법을 소개한다.

오픈소스 DBMS를 사용하면서 그 이점을 활용하고, 라이선스 문제와 같은 복잡한 사항을 피하고 싶다면, 오픈소스 기반의 상용 DBMS를 구매하고 해당 업체가 제공하는 기술 지원을 받는 것이 좋다.

일반적으로 DBMS 시장에는 오라클과 같은 기존 엔진부터, 아젠스SQL과 같이 오픈소스를 기반으로 상용화된 DBMS가 존재한다. 오픈소스의 이점을 활용하면서도, 기술 지원이나 라이선스 문제와 같은 민감한 이슈를 전문가에게 맡기고 싶다면, 오픈소스 기반 상용 DBMS를 제공하는 벤더사를 고려해 보는 것이 좋다.

이런 벤더사들의 상품은 기업 소유이기 때문에 신뢰성, 보안, 성능, 기능, 지원 등 다양한 측면에서 비즈니스의 요구를 충족시킬 수 있다. 오픈소스 기반 상용 DBMS는 내구성이 강화된, 철근과 콘크리트로 만든 다리와 같다고 볼 수 있다.

오픈소스 기반 상용 DBMS의 장점
오픈소스 기반 상용 DBMS의 장점

오픈소스 기반의 상용 DBMS 업체들은 무료로 이용 가능한 커뮤니티 버전과 기업 용도에 적합한 유료 버전인 엔터프라이즈 버전을 제공한다. 우선 해당 업체의 커뮤니티 버전을 테스트해 보고, 사용자의 요구사항에 부합한다고 판단되면 엔터프라이즈 버전을 고려하는 것도 좋은 선택이 될 것이다. 엔터프라이즈 버전을 구매하면 다음과 같은 혜택들을 받을 수 있다.


전문적인 기술 지원 및 교육

오픈소스 DBMS를 사용할 경우, 전문적인 기술 지원을 받기가 어렵다. 사용자는 직접 검색 엔진을 통해 정보를 찾아가며 설치나 유지 보수를 수행해야 한다. 만약 DBMS가 셧다운돼 급하게 복구해야 하는 상황이 발생한다면, 전문 기술 지원의 부재는 큰 문제가 될 수 있다.

그러나 오픈소스 기반의 상용 DBMS를 도입할 경우 해당 제조사에서 특정 수준의 기술 지원과 교육을 제공하는 것이 일반적이다. 라이선스 비용에 포함돼 있을 수도 있고, 별도로 추가 비용이 발생할 수도 있다.

기업 환경에서 오픈소스 DBMS를 사용하려면, 상황에 맞은 지원과 교육이 필요하다. 여러 오픈소스 DBMS를 다루는 곳에서는 기술 지원 영역이 제한적일 수 있으므로, 오픈소스 DBMS를 코어 레벨에서 직접 수정할 수 있는 제조사로부터 기술 지원을 받는 것이 더 효율적인 선택이 될 것이다. 대체로 이런 제조사들은 오픈소스를 기반으로 상용 DBMS를 제작하기 때문에 데이터베이스의 코어에 대한 이해가 높다.

또한, 코어 레벨에서 직접 수정할 수 있는 능력을 가진 제조사는 일반적으로 입문자를 교육할 수 있는 인력 또한 보유하고 있다. 사용자나 업체가 데이터베이스에 대한 교육을 받고 싶다면, 이를 위한 교육을 신청할 수도 있다. 이때 내부 교육 프로그램을 통해 오픈소스 지원 및 교육 인력을 육성하는 방법을 고려한다면, 장기적으로 기술 교육 비용을 절약하는 방법이 될 수도 있다.


강력한 보안 기능

오픈소스 DBMS는 많은 사용자에 의해 검토되고 개선되며, 적절한 보안 조치를 하면서 안전하게 사용되고 있다. 하지만 오픈소스 기반 상용 DBMS는 오픈소스 DBMS보다 보안 문제에 빠르게 대응하는 별도의 기능을 제공한다. 예를 들어 데이터 암호화 기능으로 데이터베이스 내에서 안전한 데이터 저장을 보장하며 무단 접근으로부터 보호할 수 있고, 감사 및 로깅 기능으로는 데이터 변경 내용, 접근 시도, 오류 등을 방지할 수 있다.


비즈니스 요구사항 완벽 대응

마지막으로, 오픈소스 기반의 상용 DBMS를 권장하는 이유는 엔터프라이즈 환경에 가장 적합한 버전을 제공하기 때문이다. 오픈소스 기반의 DBMS 제품들은 보안 패치, 성능 튜닝, 데이터베이스 관리 등 다양한 측면에서 지원을 제공한다. 이는 특히 대규모의 데이터를 다루는 기업이나, 보안과 안정성을 중요하게 생각하는 산업(공공, 금융 등)에서 유용하게 활용될 수 있다.

엔터프라이즈 환경의 오픈소스 기반 상용 DBMS는 비즈니스 요구 사항에 완벽하게 대응하기 위해 다음과 같은 특징과 기능을 제공한다.

상용 DBMS가 제공하는 특징 및 기능
상용 DBMS가 제공하는 특징 및 기능

오픈소스의 장점과 데이터 관리의 중요성을 고려해 볼 때, 오픈소스 기반 상용 DBMS의 선택은 효율성과 안정성을 추구하는 데 있어 가장 가치 있는 선택이 될 것이다.

1) 방은주. (2024). 김택완 “오픈소스 없으면 지금의 네이버·카카오 없어”. ZDNET Korea. https://zdnet.co.kr/view/?no=20240206104422
2) Botha, J., Grobler, M.M., Eloff, M.M. (2017). Global Data Breaches Responsible for the Disclosure of Personal Information: 2015 & 2016 (pp. 6). CORE. https://core.ac.uk/download/pdf/231923014.pdf
3) 성현희. (2013). [이슈분석] 오픈소스 대란 현실화… 라이선스 관리 비상. 전자신문 etnews. https://www.etnews.com/201309050208
4) 권혜미. (2022). 국내 기업 오픈소스 활용률 61.5%… 시장가치 7조원. 전자신문 etnews. https://www.etnews.com/20220601000093
5) 권혜미. (2023). 기업 10곳 중 7곳, 오픈소스 SW 쓴다. 전자신문 etnews. https://www.etnews.com/20230326000030

저작권자 © 아이티데일리 무단전재 및 재배포 금지