본문 바로가기
엑셈 경쟁력/제품 스포트라이트

클라우드 DB 성능관리를 위한 MaxGauge for CloudDB

by EXEM 2022. 6. 28.

Cloud Transformation, 오픈소스 DBMS의 성장

 

클라우드와 포스트 COVID-19 팬데믹의 영향으로 전세계가 몸살 중이다. 그것들이 가져온 변화는 우리의 일과 삶을 완전히 바꾸었다. 우리의 업무 환경을 변화시켰을 뿐만 아니라 소비, 생활 패턴 등 생활 깊숙이 끼친 충격과 임팩트는 실로 엄청났다. 무엇보다 우리가 주목하는 것은 전 산업 부문에서 번지고 있는 IT 패러다임의 변화이다. 많은 기업들의 근로자들의 업무가 시간과 공간의 제약을 받지 않게 되었으며, 기업들은 비용 경제적인 이유로 유연한 IT 시스템의 확장과 축소가 가능한 클라우드를 본격적으로 필요하게 됐다. 지난 몇 년간 IT업계와 전산업에 걸쳐 뜨거운 감자였던 Cloud Transformation은 이러한 변화에 의해 급물살을 타게 됐으며, 특히 2021년 그 규모가 비약적으로 성장했다.

 

DBMS 성장률 추세 (출처: 가트너)

 

Cloud Transformation은 기업의 컴퓨팅 자원인 Infrastructure의 단순한 물리적인 이동(전환)에 국한하지 않는다. Monolithic Architecture에서 MSA(Micro Service Architecture)로의 근본적인 변화를 전제로 한다. 그래서 Cloud Transformation은 데이터베이스, 애플리이션의 개발, 배포, 운영 관리를 포함한 IT 시스템의 End-to-End 전체 스택의 이동을 포함한다 이러한 MSA로의 전환은 최소한의 서비스 분리를 통해 유연성을 확보하기 위함이다. 이는 DBMS의 선택 기준에도 영향을 미친다. MSA 환경에서 다양하고 유연한 서비스에 고가의 오라클과 같은 상용 DBMS가 적합하지 않을 수 있다. 그래서 Cloud Transformation을 진행하는 기업들은 엔터프라이즈 급 DBMS 대신 오픈소스 DBMS를 활용한 업무의 분리가 가속화되고 있는 것이다.

 

오픈소스 DBMS vs 상업용 DBMS 선호도 추세 (출처: DB-ENGINES)
PostgreSQL의 꾸준한 성장 추세 (출처: DB-ENGINES)

 

이러한 오픈소스 DBMS 진영의 약진 중 단연 눈 여겨 봐야 할 부분은 PostgreSQL의 성장 추세이다. 그간 오픈소스 DBMS분야에서 절대적 1위를 차지하던 MySQL의 위치를 위협하며 꾸준히 점유율이 증가하고 있기 때문이다.

 

 

Cloud? 문제는 여전히 데이터베이스

 

빼놓을 수 없는 클라우드 환경의 특징으로 사용한 만큼 지불하는 비용 구조를 들 수 있다. 클라우드에서는 모든 것이 비용이다. CPU Network 사용량은 물론이며 호출 횟수마저 비용과 직결된다. CSP(Cloud Service Provider) 업체들은 손쉬운 Scale-Up Scale-Out기능을 자랑하지만 비용과 관련해서는 말을 극도로 아낀다. 이는 최적화되지 않은 시스템과 데이터베이스의 경우 더 많은 비용이 부과될 수 있다는 것을 의미한다.

 

클라우드로 전환한 고객들로부터 듣게 되는 공통적인 이야기가 있다. 기존 대비 성능이 느려졌다는 것이다. 한 예로, I/O 성능이 느려져 SQL 응답시간이 증가했다고 가정해보자. 이 경우 EBS(Elastic Block Storage) 타입을 변경하거나 IOPS(Input/Output Operations Per Second) 향상을 위한 Storage 증설을 고려할 수 있지만, 추가적인 비용의 발생은 피할 수 없다. 그러나 그 마저도 데이터베이스 내부에 문제가 있다면 여전히 원하는 만큼의 성능이 나오지 않을 수 있다. 결국 근본 원인을 찾아 해결해야지만 비용을 절감할 수 있는 것이다. 이것이 클라우드 환경에서의 데이터베이스 모니터링의 중요도가 강조되는 핵심 대목이다.

 

 

MFC, 새로운 모니터링 사상

 

위에서 언급한 내용을 통해서 클라우드에 구축된 데이터베이스 모니터링의 필요성을 인지하였을 것이다. 그렇다면 엑셈이 데이터베이스 상태와 성능 문제를 분석하는 방안에는 어떤 것들이 있으며, 그 방안들이 어떻게 제품에 녹아 있는지 이야기해 보도록 하겠다.

 

그 동안 수많은 데이터베이스 모니터링 툴은 성능 데이터를 수집하여 Raw 데이터를 그대로 보여주고 있었다. 문제는 Administrator Developer의 경계가 갈수록 모호해지는 상황에서 이러한 Raw 데이터에 의한 모니터링은 DBMS에 대한 지식이 상당하지 않을 경우 해석하고 이해하기 힘들다는 것이다. 결국 데이터베이스에 문제나 성능 저하가 발생하면 원인을 찾기 위한 분석에 많은 시간을 투자해야 한다.

이처럼 모니터링 툴 사용 대상군의 변화와 더불어, 비용 문제도 해결하기 위해 'MFC - PostgreSQL'에서는 OS, DB, Session, OBJECT, Vacuum, SQL 등 각각의 관점에서 의미 있는 데이터를 분석하고 집계하여 의미 있는 정보들을 함축적으로 시용자에게 제공하고자 했다.

 

 

첫번째 MFC, PostgreSQL - Real-time Analytics

 

MaxGague for CloudDB (PostgreSQL)

 

  • 특정 시간 동안 변화된 지표를 비교하여 평소 대비 이상징후가 있는 지표를 Top List로 변화 수치와 함께 제공 (데이터베이스에 문제 발생이 예상되는 경우 해당 지표 관련 문제일 가능성이 높음)
  • 특정 시간 동안 누적된 Wait Event에 대한 실시간 분석
  • 특정 시간 동안 사용량이 많아진 오브젝트와 사이즈가 증가한 오브젝트 실시간 분석
  • Vacuum 관련, age, dead tuple 모니터링 및 문제가 되는 오브젝트와 세션을 실시간 분석하여 Top List로 제공
  • 데이터베이스의 전체 Connection에 대한 사용 패턴과 각 사용 상태에 대한 backend 정보 제공
  • 실시간 Temp 사용량 모니터링과 Temp 사용량이 높은 Top SQL List 제공
  • 사후 분석화면에서 지난 데이터를 그대로 보여주는 것이 아닌 문제구간을 분석하여 각 관점(Backend, SQL, Object, Wait Event, Application, Lock )에서 문제가 될 가능성이 높은 사항 제공

MFC PostgreSQL”은 위에서 나열한 것처럼, 각 모니터링 관점의 대상이 되는 데이터를 단순히 보여주는 것에 그치지 않고 문제 발생과 관련이 높은 정보를 분석하여 제공한다. 그래서 실시간 모니터링 시 문제가 되는 상황이 발생하면 담당자는 어떠한 문제였는지 클릭 후 체크만 하면 된다. 기존엔 데이터베이스 문제 발생시 많은 시간을 들여 직접 분석을 하거나 엔지니어에게 분석을 요청을 해야 했지만, 이제는 이미 원하는 정보를 제품에서 제공하고 있다고 봐도 무방 할 것이다.

 

 

마치며

 

아이러니하게도 엑셈이 넘어서야 할 데이터베이스 모니터터링 제품은 다름아닌 바로 엑셈의 MaxGauge이다. MaxGauge는 압도적인 시장 점유율을 가진 대표적인 데이터베이스 모니터링 소프트웨어지만, 반면에 시장에서 지지와 선택을 받아온 만큼 많은 사용자에게서 개선할 점과 변화해야 할 방향에 대해 조언을 들어왔다. 그러한 조언을 참고삼아 오픈소스 데이터베이스 모니터링의 완성도를 높이고 사용자가 만족할 만한 제품을 만들기 위해 엑셈의 전문 컨설턴트와 성능 장애 분석 엔지니어들이 지난 몇 년간 고민하여, MFC 첫 제품 MaxGauge for CloudDB - PostgreSQL 출시하게 되었다.

 

현재 엑셈은 클라우드 환경에서 운영되는 PostgreSQL에 대한 고객 컨설팅을 활발하게 진행하면서 관련 지식들을 정리하며 축척해 가고 있다. 엑셈은 계속해서 다양한 클라우드 데이터베이스에 대한 지식을 꾸준하게 확장해 나갈 것이다. 앞으로 고객들과 사용자들은 클라우드 데이터베이스 모니터링에 대한 엑셈의 전문 노하우를 MFC(MaxGauge for CloudDB) 제품을 시장을 통해서 전달받을 수 있을 것이다.

 

 

 

 

 

 

 

기획 및 글 | 컨설팅 그룹 지원 2팀

 

 

 

댓글