AI VIDEO BRIEFING

구글 클라우드 DMS, AI로 T-SQL을 PostgreSQL PL/pgSQL로 자동 변환·현대화

구글 클라우드의 데이터베이스 마이그레이션 서비스가 AI로 오래된 T-SQL 저장 프로시저를 단순 번역이 아니라 CTE 같은 최신 패턴의 PostgreSQL 코드로 바꾸고, 제미나이가 그 변경 이유까지 설명해 주는 시연을 소개한다.

구글 클라우드 DMS, AI가 레거시 SQL을 '더 나은 코드'로 현대화한다 영상 대표 이미지

핵심 메시지

  • 구글 클라우드의 데이터베이스 마이그레이션 서비스(DMS)는 SQL Server의 T-SQL 코드를 PostgreSQL용 PL/pgSQL로 옮길 때 줄 단위로 베끼지 않고 더 효율적인 구조로 다시 설계한다.
  • 임시 테이블과 커서에 의존하던 다단계 절차형 코드를 공통 테이블 표현식(CTE)을 쓴 하나의 PostgreSQL 함수로 재작성해 '집합 기반' 방식으로 현대화한다.
  • 변환 결과 옆에서 제미나이가 왜 그렇게 바꿨는지, 성능상 어떤 이점이 있는지를 설명해 준다.
  • 단순 코드 변환을 넘어 모범 사례와 성능 튜닝 기법까지 알려 주는 '가상 아키텍트'처럼 작동한다.

쉽게 이해하기

오래 운영된 데이터베이스에는 임시 테이블이나 커서에 의존하는 복잡한 다단계 저장 프로시저가 흔하다. 동작은 하지만 비효율적이고, 최신 데이터베이스 패턴과는 잘 맞지 않는다. 영상은 이런 레거시 코드를 다른 데이터베이스로 옮길 때 흔히 쓰는 단순 변환 도구의 한계를 먼저 짚는다.

기본적인 변환 도구는 기존 로직을 한 줄씩 그대로 옮긴다. 결과물이 돌아가긴 하지만, 비효율적인 구조까지 함께 복제된다는 점이 문제다. 영상은 'get high value customers'라는 T-SQL 프로시저를 예로 든다. 이 코드는 임시 테이블을 만들고, 초기 데이터를 넣은 뒤 추가 정보로 갱신하고 결과를 조회하는 전형적인 절차형 패턴이다.

반면 구글 클라우드의 데이터베이스 마이그레이션 서비스(DMS)로 변환한 결과는 임시 테이블을 아예 만들지 않는다. 대신 여러 단계를 공통 테이블 표현식(CTE)을 활용한 하나의 깔끔한 PostgreSQL 함수로 재구성했다. 코드의 의도를 파악해 더 나은 패턴으로 다시 구현한, 단순 번역이 아닌 '지능형 현대화'라는 것이 영상의 핵심이다.

왜 이 방식이 더 나은지는 제미나이가 설명한다. 임시 테이블을 CTE로 바꾼 것은 PostgreSQL의 표준인 집합 기반 접근을 따르기 위해서이며, 이렇게 하면 쿼리 플래너가 전체 작업을 하나의 단위로 보고 훨씬 효율적인 실행 계획을 세울 수 있다. 물리적 임시 테이블에 쓰고 다시 읽는 과정이 사라져 입출력(IO)도 줄어든다.

주요 인사이트

  • 데이터베이스 이전(마이그레이션)의 가치는 '같은 동작을 유지하는 것'에만 있지 않다. 옮기는 김에 코드 구조 자체를 더 좋은 패턴으로 끌어올릴 수 있다는 점이 AI 변환의 차별점이다.
  • 절차형(임시 테이블·커서) 코드를 집합 기반(CTE) 코드로 바꾸면 쿼리 플래너가 전체를 한 단위로 최적화할 수 있어 성능과 효율이 함께 좋아진다.
  • AI가 변환 결과만 던져 주는 것이 아니라 '왜 이렇게 바꿨는지'를 설명해 주면, 사용자는 마이그레이션을 하면서 성능 튜닝 기법까지 자연스럽게 배우게 된다.
  • 레거시 코드를 그대로 옮기는 것과 현대적 패턴으로 재설계하는 것은 결과가 다르며, AI 도구는 후자를 자동으로 제안할 수 있다.

자주 묻는 질문

DMS는 T-SQL 코드를 어떤 방식으로 변환하나요?

줄 단위로 그대로 옮기는 단순 번역이 아니라, 코드의 의도를 파악해 임시 테이블 기반의 다단계 절차를 공통 테이블 표현식(CTE)을 쓴 하나의 PostgreSQL 함수로 재설계합니다.

임시 테이블을 CTE로 바꾸면 무엇이 좋아지나요?

PostgreSQL의 표준인 집합 기반 방식이 되어, 쿼리 플래너가 전체 작업을 하나의 단위로 보고 더 효율적인 실행 계획을 세웁니다. 물리적 임시 테이블에 쓰고 읽는 과정이 사라져 입출력도 줄어듭니다.

제미나이는 이 과정에서 어떤 역할을 하나요?

변환된 코드 옆에서 왜 그렇게 바꿨는지, 그리고 성능상 어떤 이점이 있는지를 설명해 주어, 사용자가 변경 사항을 이해하고 모범 사례를 배울 수 있게 돕습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식