클라우드에서는 오픈소스 DBMS를! [2부] - 기존 DBMS 사용자의 고려 사항
상태바
클라우드에서는 오픈소스 DBMS를! [2부] - 기존 DBMS 사용자의 고려 사항
  • 문경진 이사
  • 승인 2019.12.18 02:00
  • 조회수 5679
  • 댓글 0
이 콘텐츠를 공유합니다

기존 DBMS를 PostgreSQL DBMS로 전환하기 위해서는 몇 가지 검토해야 할 사항이 있다.

첫째, PostgreSQL DBMS을 어떤 방식으로 도입할 것인지, 둘째, 데이터 마이그레이션을 위해서는 어떤 솔루션 또는 서비스를 선택해야 하는지, 마지막으로 PostgreSQL DBMS로 어플리케이션 개발 시 고려사항이다.

이러한 3가지 관점의 PostgreSQL DBMS 도입 시 고려사항을 현재 국내에서 가장 보편적으로 운영되고 있는 Oracle DBMS 관점에서 소개하고자 한다.

 

1. PostgreSQL DBMS 도입 시 고려사항

PostgreSQL DBMS를 도입하는 방법은 크게 4가지 정도가 있다. 

1) 자체 적용

PostgreSQL DBMS를 자체적으로 설치 및 유지보수 하는 방법이다. 비용적인 측면에서는 가장 유리한 방법이다.

하지만 자체 적용을 위해서는 장애 대응, 백업&복구 등 DBMS운영을 위한 PostgreSQL 엔지니어를 보유하고 있어야 하고, 관련 지식 및 PostgreSQL 커뮤니티에 참여하여 지속적인 기술 향상이 가능해야 한다. 처음부터 핵심 업무에의 도입 보다는 비즈니스 중요도가 낮고 단순한 업무에 우선적으로 테스트베드 형태로 도입하여 운영 노하우를 확보한 후 점진적으로 확대하는 방법으로 적용할 필요가 있다. 

 

2) 3rd Party 업체 지원

PostgreSQL DBMS 기술력을 보유한 업체와의 기술지원 계약(기술인력 지원 or Subscription 계약 등)을 통해 기술지원을 받는 방법이다. 자체 기술력을 보유하고 있지 않다면 기술지원 계약을 통해 안정적으로 운영을 할 수 있고, 도입 초기의 기술적 이슈 해결 후 내부 역량 확보를 통해 비용을 절감 할 수 있다.

국내 기술지원 업체는 현재 인젠트(구 K4M), KTDS, 락플레이스 등이 있다.

 

3) 상용 제품/서비스 활용

PostgreSQL DBMS의 상용화 제품을 활용하는 것으로 오픈소스 PostgreSQL DBMS에 관리 및 운영 기능을 추가한 것으로 대표적으로EDB(Enterprise DB, https://www.enterprisedb.com/)와 국내 업체인 인젠트의 eXperDB(http://www.inzent.com/product/data_solution.php) 등이 있다.

 

4) 클라우드 서비스 활용

클라우드 서비스를 통해 PostgreSQL DBMS를 활용하는 방법으로 Amazon AWS의 Aurora PostgreSQL 서비스, KTDS의 EDB PPAS(Postgres Plus Advanced Server) 서비스, Microsoft Azure PostgreSQL 서비스 등이 있다.

상용 클라우드 서비스를 검토하고 있다면 동일한 클라우드 서비스 업체에서 제공하는 PostgreSQL DBMS 서비스이므로 고려해볼 만한 방식이다.

 

2. 데이터 마이그레이션 시 고려사항

이기종 DBMS로의 변환 시, 가장 중요한 고려사항 중 하나는 바로 데이터 마이그레이션이다.

수작업Script 방식으로 데이터 마이그레이션이 가능은 하지만 이기종 DBMS 간의 데이터 타입이 상이하고, 다양한 DB Object(Function, Procedure, Sequence, 등) 도 함께 마이그레이션이 필요하기 때문에 수작업 보다는 마이그레이션 솔루션을 도입하여 마이그레이션 하는 것이 가장 효과적이다. 

PostgreSQL DMBS 마이그레이션을 위해 오픈소스 솔루션 또는 상용 솔루션을 검토할 수 있으며 아래 표는 Oracle 및 타 DBMS(MySQL, IBM DB2, SQL Server 등)를 PostgreSQL DBMS로 마이그레이션 할 수 있는 대표적인 솔루션 리스트이다.

투이톡_dbms_1.jpg

 [표1] PostgreSQL 데이터 마이그레이션 솔루션 / 출처: 박용석, “이기종 마이그레이션 TOOL”, http://haisins.epac.to/wordpress/?p=4405 , 2019

위 표에서 언급된 솔루션 이외에도 클라우드 서비스를 사용한다면 서비스 제공업체에서 보유한 데이터 마이그레이션 솔루션과 서비스를 활용할 수 있다.

Amazon의 AWS Database Migration Service(AWS DMS), Microsoft의 Azure Database Migration Service(Azure DMS), EDB의 Migration Toolkit (MTK) 등이다.

데이터 마이그레이션은 데이터 누락없이 한정된 시간 내에 전환해야 하므로 단순히 솔루션 도입만으로 다양한 이슈를 해결할 수 없는 부분이 존재한다.

DB구조가 단순 하다면 오픈소스 솔루션 만으로도 가능하지만, 기존DB 구조가 복잡하고 대량의 데이터 및 DB Object를 마이그레이션 하기 위해서는 솔루션뿐만 아니라 마이그레이션 경험이 풍부한 전문 기술지원 인력을 통해 리스크를 줄일 수 있다.

데이터 마이그레이션은 일회성 작업이지만 중요도는 시스템 오픈의 성패를 결정지을 만큼 중요한 요소이므로 솔루션뿐만 아니라 기술지원 인력의 역량과 경험도 함께 고려하여야 한다.

 

3. 어플리케이션 개발 시 고려사항

PostgreSQL 은 표준 SQL(ANSI 표준 및 ISO표준)을 지원하므로 기본적은 데이터 조작은 DBMS에 상관이 없어 큰 지장을 주지 않는다. 하지만 Oracle DBMS에 익숙한 개발자는 익숙해 지는데 어느 정도의 적응기간이 필요하다.

DBMS에서 제공하는 함수나 문법, 데이터 타입 등이 상이하여 기존 프로그램 수정 및 신규 개발 생산성이 개발 초기 단계에는 불가피하게 낮을 수 있다. 이를 해소하기 위해서는 아래와 같은 방법이 있다.


1) 교육 및 가이드 문서의 제공, 지식 교환, 커뮤니티 활용

PostgreSQL 교육, 개발자 가이드 문서, 커뮤니티 등을 통하여 다양한 정보를 취득하고 학습하여 역량을 향상시키는 방법이다  

 투이톡_dbms_2.jpg
[표 2] PostgreSQL 관련 커뮤니티 및 참고사이트

 

2) 확장프로그램 설치

“Orafce extention”(https://pgxn.org/dist/orafce/3.7.2/) 이라는 PostgreSQL DBMS확장 프로그램 설치를 통해 오라클에서만 지원되던 Connect By, NVL, DECODE 등을 PostgreSQL DBMS에서도 동일하게 사용할 수 있어 DBMS 전환에 따른 개발 생산성 Gap을 일부분 줄일 수 있다.   


3) Cloud 서비스 활용

클라우드 서비스 중, EDB 의 PPAS 서비스를 사용할 경우, PostgreSQL DBMS를 Oracle DBMS와 동일하게 동작하도록 기능이 추가된 DBMS 서비스로 DBMS 전환에 따른 개발 생산성 Gap을 일부분 줄일 수 있다. 하지만 오픈소스를 사용하는 것보다 비용, 성능, 업그레이드(패치) 측면에 단점은 존재한다.


4. Oracle vs PostgreSQL 비교

아래 표는 Oracle과 PostgreSQL 에 대한 다양한 측면에서 비교한 자료로 기존 Oracle 을 PostgreSQL로 전환하거나 신규 도입 시 참고할 사항이다. 

투이톡_dbms_3.jpg
[표 3] Oracle vs PostgreSQL 비교 / 출처: educba, “Oracle vs PostgreSQL”, https://www.educba.com/oracle-vs-postgresql/


4차 산업혁명 이후 기하급수적으로 늘어나고 있는 데이터양과 다양한 데이터를 처리하기 위해서는 기존 DBMS로는 확장성((Scale-Out), 대량 데이터 처리를 위한 부하분산(Replication & Distribution), 다양성(JSON, GIS, 등) 기능 및 비용 측면에 한계가 존재한다. 특히 클라우드 환경에서는 더 그러하다.

국내의 경우 공공부문은 이미 오래전부터 클라우드 오픈소스 DBMS를 도입하여 잘 활용하고 있으며 민간부문도 현재 다양한 분야에 클라우드 도입을 추진하고 있으며 단순히 클라우드 인프라 도입이 아닌 실제 핵심서비스에 적용하기 위해 다양한 고민을 하고 있다.

이제 클라우드로의 전환은 대세이며 클라우드 전환 시 핵심 이슈인 DMBS 선정에 있어 오픈소스 기반의 PostgreSQL DBMS는 아주 좋은 대안이 될 수 있을 것으로 기대된다.

- 끝 -

 

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.