Oracle 및 SQL Server 데이터베이스를 구글 클라우드로 이전하기
엔터프라이즈 컴퓨팅 환경에서 데이터베이스의 중요성은 강조할 필요가 없습니다. 다른 시스템처럼 데이터베이스 역시 ‘현대화’의 길을 걷고 있습니다. 이 길은 어디를 향하고 있을까요? 바로 클라우드 네이티브입니다. 클라우드 컴퓨팅의 이점을 극대화하는 방향으로 데이터베이스는 진화하고 있습니다. 이런 분위기 속에서 클라우드 네이티브 애플리케이션을 개발, 배포, 운영하는 조직은 자연스럽게 예전 방식에서 벗어나 클라우드 네이티브 데이터베이스를 선택하고 있습니다. 이번 포스팅에서는 운영 중인 오라클 데이터베이스나 SQL 서버 데이터베이스를 구글 클라우드의 다양한 데이터베이스 서비스로 이전하는 방법을 단계별로 살펴보겠습니다.
👍 시행착오 없는 전환을 위한 준비 완료!
구글 클라우드는 시행착오 없는 전환을 지원하기 위해 준비를 해놓고 있습니다. 이를 간단히 요약하면 다음과 같습니다. 구글 클라우드는 대규모 데이터베이스 마이그레이션 프로젝트 추진 경험을 쌓아 왔습니다. 그리고 이 과정에서 체득한 노하우를 체계적으로 정리해 마이그레이션 프레임워크를 만들었습니다. 이 프레임워크는 두 가지 중요한 요소로 구성됩니다. 첫 번째는 도구입니다. 마이그레이션 작업을 자동으로 처리해주는 도구들이 포함되어 있어, 사람이 직접 하는 것보다 훨씬 빠르고 정확하게 작업을 수행할 수 있습니다. 두 번째는 전문가입니다. 메가존소프트 같은 전문 파트너 생태계와 함께 데이터베이스 이전에 대한 깊은 지식을 가진 전문가들이 마이그레이션 프로젝트에 참여해 작업을 수행합니다.
이제 마이그레이션 프레임워크와 자동화 도구 그리고 전문가의 참여 속에서 실제 작업이 어떻게 이루어는지 단계별로 살펴보겠습니다.
Step 1️⃣ : 평가
데이터베이스 마이그레이션의 첫 번째 단계는 현재 사용 중인 데이터베이스의 상태를 자세히 살펴보는 것입니다. 이 단계에서는 데이터베이스가 얼마나 복잡한지, 그리고 얼마나 잘 작동하고 있는지를 평가합니다. 이렇게 함으로써, 마이그레이션 작업이 얼마나 어려울지와 이 작업에 얼마나 시간이 걸릴지를 미리 알 수 있습니다.
또한, 데이터베이스뿐만 아니라 그와 연결된 애플리케이션도 함께 평가합니다. 이렇게 하면, 데이터베이스를 옮긴 후 애플리케이션에서 어떤 부분을 수정해야 할지 미리 예측할 수 있습니다. 이 단계는 전체 마이그레이션 과정이 원활하게 진행될 수 있도록 돕는 중요한 준비 작업입니다.
Step 2️⃣ : 계획 수립
계획 수립 단계에서는 평가 단계에서 얻은 결과를 바탕으로 마이그레이션 작업의 우선순위를 정합니다. 일반적으로 마이그레이션은 부담이 적은 시스템 위주로 시작을 합니다. 이 과정에서 경험을 쌓은 다음 나중에 미션크리티컬한 시스템까지 이전하는 로드맵을 수립합니다.
여기서 궁금증이 들 것입니다. 우선순위 대상을 어떤 기준으로 선정해야 할까요? 구글 클라우드는 결정을 돕기 위해 DMA(Database Migration Assessment) 도구를 제공합니다. 이를 활용하면 데이터베이스 현대화(Modernization)이 시급한 데이터베이스가 어떤 시스템인지 명확한 기준을 가지고 평가할 수 있습니다.
Step 3️⃣ : 스키마 및 코드 변환
이제 실제 작업이 이루어지는 단계로 넘어 갑니다. 스키마 및 코드 변환 단계에서는 먼저 데이터베이스의 구조(스키마)와 그 안에 포함된 코드를 새로운 데이터베이스 형식에 맞게 변환하는 작업을 시작합니다. 이 과정에서 구글 클라우드가 제공하는 DMS라는 도구와 AI 기능을 사용하여, 변환 작업에 들어가는 노력과 시간을 줄일 수 있습니다.
특히, AI는 변환 과정에서 어려움이 생길 수 있는 복잡한 코드들을 분석합니다. 만약 변환 중에 오류가 발생하면 AI가 이를 찾아내고 어떻게 수정해야 할지 구체적인 방법을 제안해 줍니다. 이렇게 하면 사람이 직접 오류를 찾고 수정하는 것보다 훨씬 빠르고 정확하게 작업이 진행될 수 있습니다.
Step 4️⃣ : 데이터 이전
데이터베이스의 구조와 코드를 변환한 후 실제 데이터를 새 데이터베이스로 옮기는 단계로 넘어 갑니다. 이 과정에서 구글 클라우드의 DMS 도구를 사용하면 데이터를 안전하고 빠르게 이전할 수 있습니다.
참고로 실시간 복제 기능을 활용하면 데이터를 옮기는 동안에도 기존 시스템을 계속 사용할 수 있어, 중단 시간을 최소화할 수 있습니다. 이렇게 하면 데이터베이스 이전 과정이 사용자에게 거의 영향을 미치지 않도록 할 수 있습니다.
Step 5️⃣ : 애플리케이션 변환
이 단계에서는 새로운 데이터베이스에 맞추어 애플리케이션의 코드를 수정하는 작업을 진행합니다. 이 과정에서 자동화 도구를 사용하여 애플리케이션 안에 있는 SQL 쿼리(데이터를 다루는 명령어)를 새로운 데이터베이스에 맞는 문법으로 자동으로 바꿉니다. 이렇게 하면 사람이 일일이 코드를 수정할 필요 없이, 더 빠르고 정확하게 애플리케이션을 새 데이터베이스에 맞출 수 있습니다.
Step 6️⃣ : 테스트 및 최적화
마지막 단계에서는 데이터와 애플리케이션이 새 데이터베이스로 잘 옮겨졌는지 확인하는 작업을 합니다. 먼저 데이터가 이전과 동일하게 잘 보존되었는지 점검하고, 애플리케이션이 새 데이터베이스에서도 제대로 작동하는지 테스트합니다. 만약 문제가 발견되면 이를 해결하고 성능을 더 좋게 만들기 위해 최적화 작업도 함께 진행합니다. 이 과정을 통해 모든 것이 제대로 작동하도록 보장합니다.
살펴본 바와 같이 구글 클라우드는 오래 사용한 데이터베이스 시스템을 클라우드 시대에 맞게 현대화하기 위해 마이그레이션을 하는 데 필요한 방법론과 도구 그리고 지원 조직을 갖추고 있습니다. 더 자세한 내용은 메가존소프트에 문의해 주세요. 😎 [ 문의하기 ]