이기종 데이터베이스 마이그레이션을 위한 도구 - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

이기종 데이터베이스 마이그레이션을 위한 도구

다음 차트는 SQL Server에서 다른 데이터베이스 엔진으로 마이그레이션하는 데 사용할 수 있는 도구 목록을 제공합니다.

마이그레이션 도구 대상 데이터베이스 지원 사용 대상
AWS SCT

Amazon RDS for MySQL

Amazon RDS for PostgreSQL

Amazon Aurora MySQL

Amazon Aurora PostgreSQL

스키마 변환
AWS DMS

Amazon RDS for MySQL

Amazon RDS for PostgreSQL

Amazon Aurora MySQL

Amazon Aurora PostgreSQL

데이터 마이그레이션
Babelfish

Amazon Aurora PostgreSQL

데이터 액세스 및 마이그레이션

다음 하위 섹션에서는 각 도구에 대한 자세한 정보를 제공합니다.

AWS SCT

AWS Schema Conversion Tool(AWS SCT)는 기존의 상용 데이터베이스 스키마를 오픈 소스 엔진 또는 AWS 클라우드 네이티브 데이터베이스로 변환합니다. AWS SCT는 소스 데이터베이스 스키마와 대부분의 데이터베이스 코드 개체(뷰, 저장된 프로시저, 함수 등)를 대상 데이터베이스와 호환되는 형식으로 자동 변환하여 이기종 데이터베이스 마이그레이션을 예측할 수 있도록 합니다.

한 엔진에서 다른 엔진으로 데이터베이스 스키마를 변환할 때는 이전 데이터베이스 엔진 대신 새 데이터베이스 엔진과 상호 작용하도록 응용 프로그램의 SQL 코드도 업데이트해야 합니다. 또한 AWS SCT은 C++, C#, Java 또는 기타 애플리케이션 코드의 SQL 코드를 변환합니다. 자동으로 변환할 수 없는 모든 객체는 수동 변환용으로 명확하게 표시됩니다. 또한 AWS SCT은 애플리케이션 소스 코드에서 내장된 SQL 문을 스캔하여 데이터베이스 스키마 변환 프로젝트의 일부로 변환할 수 있습니다. 자세한 내용은 AWS 설명서의 AWS SCT에 대한 소스로 Microsoft SQL Server 사용을 참조하세요.

AWS DMS

AWS Database Migration Service(AWS DMS)는 데이터를 빠르고 안전하게 AWS로 마이그레이션합니다. 마이그레이션하는 동안 원본 데이터베이스는 완벽하게 작동하여 애플리케이션 다운타임을 최소화합니다. AWS DMS은 하나의 SQL Server 데이터베이스에서 다른 SQL Server 데이터베이스로 데이터를 마이그레이션하는 것과 같은 동종 마이그레이션을 지원합니다. 또한 SQL Server 데이터베이스를 오픈 소스 데이터베이스 또는 AWS 클라우드 네이티브 데이터베이스로 마이그레이션하는 등 서로 다른 데이터베이스 플랫폼 간의 이기종 마이그레이션도 지원합니다. AWS DMS는 원본 데이터베이스에서 발생하는 데이터 변경 사항을 대상 데이터베이스에 자동으로 복제하는 등 마이그레이션 프로세스의 복잡성을 관리합니다. 데이터베이스 마이그레이션이 완료된 후 대상 데이터베이스는 사용자가 선택하는 기간 동안 원본과 동기 상태를 유지합니다. 따라서 데이터베이스를 편리한 시점에 전환할 수 있습니다. 자세한 내용은 AWS 설명서의 Microsoft SQL Server 데이터베이스를 AWS DMS에 대한 소스로 사용을 참조하십시오.

Babelfish

Babelfish는 Amazon Aurora에 내장된 기능입니다. Babelfish for Aurora PostgreSQL를 사용하면 Aurora PostgreSQL 호환 버전 데이터베이스에서 Microsoft SQL Server용으로 작성된 애플리케이션의 명령을 이해할 수 있습니다. SQL Server의 전용 SQL 언어인 Transact-SQL(T-SQL)로 작성된 SQL Server 데이터베이스 코드가 있는 SQL Server 애플리케이션을 수정하려면 많은 노력이 필요하고 시간이 많이 걸립니다. Babelfish for Aurora PostgreSQL를 사용하면 이 프로세스를 더 간단하고 쉽게 수행할 수 있습니다. Babelfish를 사용하면 애플리케이션 코드를 변경할 필요가 없습니다. 대신 Babelfish for Aurora PostgreSQL를 사용하여 SQL Server 데이터베이스를 Aurora PostgreSQL 호환 DB 클러스터로 마이그레이션할 수 있습니다.

Babelfish를 사용하면 Aurora PostgreSQL이 T-SQL을 이해하고 동일한 통신 프로토콜을 지원하므로 데이터베이스 드라이버를 전환하거나 애플리케이션 쿼리를 다시 작성할 필요가 없습니다. 원래 SQL Server용으로 작성된 애플리케이션을 이제 코드 변경 횟수를 줄이면서 Aurora와 연동할 수 있습니다. 이를 통해 SQL Server 또는 최신 버전에서 실행되는 애플리케이션을 수정하고 Aurora로 이동하는 데 필요한 노력이 줄어들어 마이그레이션 속도가 빨라지고 위험도가 낮으며 비용 효율적으로 마이그레이션할 수 있습니다.

기존 SQL Server 데이터베이스에서 마이그레이션하는 경우 기본 PostgreSQL API를 사용하여 구축한 새로운 기능과 함께 Babelfish를 사용하여 SQL Server 코드를 실행할 수 있습니다. Babelfish는 Aurora PostgreSQL가 일반적으로 사용되는 SQL Server 도구, 명령 및 드라이버와 함께 작동할 수 있도록 합니다.

또한 Babelfish는 기본 PostgreSQL 연결을 사용하여 데이터에 대한 액세스를 제공합니다. 기본적으로 Babelfish에서 지원하는 두 SQL 언어는 다음 포트에서 기본 와이어 프로토콜을 통해 사용할 수 있습니다.

  • SQL Server 언어(T-SQL)의 경우 포트 1433에 연결합니다.

  • PostgreSQL 언어(PL/pgSQL)의 경우 포트 5432에 연결합니다.

Babelfish를 사용하면 SQL Server 또는 PostgreSQL 포트에서 연결을 제공하여 광범위한 코드 재작성 없이 기존 SQL Server 애플리케이션이 Aurora와 통신할 수 있습니다. 다음은 이러한 아키텍처를 나타낸 다이어그램입니다.

Babelfish와 Aurora의 통신

Amazon RDS 관리 콘솔을 사용하여 Aurora 클러스터에서 Babelfish를 활성화할 수 있습니다. 자세한 지침은 Amazon RDS 설명서의 Babelfish for Aurora PostgreSQL DB 클러스터 생성을 참조하십시오.

마이그레이션에 대한 자세한 내용은 Aurora 설명서의 SQL Server 데이터베이스를 Babelfish for Aurora PostgreSQL로 마이그레이션하기를 참조하십시오.

자세한 내용은 다음 리소스를 참조하세요.