오픈 소스 데이터베이스를 위한 Azure 서비스 설명하기

완료됨

Azure 데이터 서비스는 Azure SQL 서비스에 더해 MySQL, MariaDB, PostgreSQL과 같이 널리 사용되는 관계형 데이터베이스 시스템용으로도 사용할 수 있습니다. 이러한 서비스의 주된 목표는 온-프레미스 앱에서 해당 서비스를 사용하는 조직이 애플리케이션에 중대한 변경을 적용하지 않고도 빠르게 Azure로 이동할 수 있도록 지원하는 것입니다.

MySQL, MariaDB 및 PostgreSQL이란?

MySQL, MariaDB 및 PostgreSQL은 여러 전문 분야에 맞게 조정된 관계형 데이터베이스 관리 시스템입니다.

MySQL은 사용하기 간편한 오픈 소스 데이터베이스 관리 시스템으로 설계되었습니다. MySQL은 LAMP(Linux, Apache, MySQL, PHP) 스택 앱을 위한 최고의 오픈 소스 관계형 데이터베이스입니다. MySQL은 Community, Standard, Enterprise 등 여러 Edition이 있습니다. Community Edition은 무료로 사용할 수 있으며, Linux에서 실행되는 웹 애플리케이션용 데이터베이스 관리 시스템으로 널리 사용되고 있습니다. Windows용 버전도 있습니다. Standard Edition은 보다 뛰어난 성능을 제공하며 데이터를 저장을 위해 다른 기술을 사용합니다. Enterprise Edition은 향상된 보안, 가용성 및 스케일링 성능을 비롯하여 광범위한 도구 및 기능 세트를 제공합니다. Standard 및 Enterprise Edition은 일반 기업에서 가장 많이 사용되는 버전으로, 이 버전의 소프트웨어는 무료가 아닙니다.

MariaDB는 MySQL의 원래 개발자가 만든 최신 데이터베이스 관리 시스템입니다. 그 후로 데이터베이스 엔진이 성능 향상을 위해 다시 작성되고 최적화되었습니다. MariaDB는 Oracle Database(다른 인기 있는 상용 데이터베이스 관리 시스템)와의 호환성을 제공합니다. MariaDB의 주목할 만한 한 기능으로 임시 데이터가 기본적으로 지원됩니다. 테이블은 여러 버전의 데이터를 보유할 수 있으므로 애플리케이션에서 과거의 특정 시점에 나타난 데이터를 쿼리할 수 있습니다.

PostgreSQL은 하이브리드 관계형 개체 데이터베이스입니다. 관계형 테이블에 데이터를 저장할 수 있지만, PostgreSQL 데이터베이스를 사용하면 사용자 지정 데이터 형식을 고유한 비관계형 속성과 함께 저장할 수도 있습니다. 데이터베이스 관리 시스템을 확장할 수 있습니다. 데이터베이스에 코드 모듈을 추가하여 쿼리를 통해 실행할 수 있습니다. 또 다른 주요 기능은 선, 원 및 다각형과 같은 기하학적 데이터를 저장하고 조작하는 기능입니다.

PostgreSQL에는 pgsql이라는 자체 쿼리 언어가 있습니다. 이 언어는 데이터베이스 내에서 실행되는 저장 프로시저를 작성할 수 있도록 하는 기능이 포함된 표준 관계형 쿼리 언어인 SQL의 변형입니다.

MySQL용 Azure Database

Azure Database for MySQL logoAzure Database for MySQL은 MySQL Community Edition을 기반으로 하는 Azure 클라우드에서 MySQL의 PaaS 구현입니다.

MySQL용 Azure Database 서비스에는 필요에 따라 추가 비용 없이 고가용성과 스케일링 성능이 포함됩니다. 사용한 양만큼만 요금을 지불합니다. 특정 시점 복원을 사용한 자동 백업이 제공됩니다.

서버는 방화벽 규칙을 적용하고 필요에 따라 SSL 연결을 요구하는 연결 보안을 제공합니다. 서버 매개 변수를 여러 개 사용하면 잠금 모드, 최대 연결 수 및 시간 제한과 같은 서버 설정을 구성할 수 있습니다.

Azure Database for MySQL은 하드웨어, 네트워크 구성 요소, 가상 서버, 소프트웨어 패치 및 기타 기본 구성 요소를 관리할 필요 없이 최대 규모의 데이터베이스로 스케일 업되는 글로벌 데이터베이스 시스템을 제공합니다.

특정 작업은 MySQL용 Azure Database에서 사용할 수 없습니다. 이러한 함수는 주로 보안 및 관리와 관련이 있습니다. Azure는 데이터베이스 서버 자체의 이러한 측면을 관리합니다.

Azure Database for MySQL의 이점

Azure Database for MySQL에는 다음과 같은 특징이 있습니다.

  • 기본 제공되는 고가용성 기능.
  • 예측 가능한 성능.
  • 신속하게 수요에 대응하는 간편한 스케일링.
  • 미사용 상태의 데이터와 동작 중인 데이터를 모두 보호.
  • 최근 35일 동안 자동 백업 및 특정 시점 복원
  • 엔터프라이즈 수준 보안 및 법률 준수.

시스템에서 종량제 가격 책정을 사용하므로 사용한 양만큼만 요금을 지불하면 됩니다.

MySQL용 Azure Database 서버는 경고를 추가하고 메트릭 및 로그를 볼 수 있는 모니터링 기능을 제공합니다.

Azure Database for MariaDB

Azure Database for MariaDB logoAzure Database for MariaDB는 Azure에서 실행할 수 있도록 조정된 MariaDB 데이터베이스 관리 시스템의 구현입니다. 이는 MariaDB Community Edition을 기반으로 합니다.

데이터베이스는 Azure에서 완벽하게 관리되고 제어됩니다. 서비스를 프로비저닝하고 데이터를 전송한 후에는 시스템에 추가 관리가 거의 필요하지 않습니다.

Azure Database for MariaDB의 이점

Azure Database for MariaDB는 다음을 제공합니다.

  • 추가 비용 없이 기본 제공되는 고가용성
  • 예측 가능한 성능, 종량제 가격 책정 사용
  • 필요에 따라 몇 초 이내에 스케일링.
  • 미사용 및 동작 중인 중요한 데이터를 안전하게 보호.
  • 최대 35일 동안 자동 백업 및 지정 시간 복원
  • 엔터프라이즈급 보안 및 규정 준수

Azure Database for PostgreSQL

Azure Database for PostgreSQL logoPostgreSQL을 선호하는 경우 Azure 클라우드에서 PostgreSQL의 PaaS 구현을 실행하도록 Azure Database for PostgreSQL을 선택할 수 있습니다. 이 서비스는 MySQL 서비스와 동일한 가용성, 성능, 스케일링, 보안 및 관리 이점을 제공합니다.

온-프레미스 PostgreSQL 데이터베이스의 일부 기능은 Azure Database for PostgreSQL에서 사용할 수 없습니다. 이러한 기능은 주로 사용자가 데이터베이스에 추가하여 다양한 프로그래밍 언어(지원되는 pgsql 이외의 언어)로 저장 프로시저를 작성하는 것과 같은 특수한 작업을 수행하는 데 사용할 수 있는 확장, 그리고 운영 체제와의 직접 상호 작용과 관련이 있습니다. 가장 자주 사용되는 핵심 확장 세트가 지원되며, 사용 가능한 확장 목록이 계속 검토 중입니다.

Azure Database for PostgreSQL 유연한 서버

PostgreSQL에 대한 유연한 서버 배포 옵션은 완벽한 관리형 데이터베이스 서비스입니다. 높은 수준의 제어 및 서버 구성 사용자 지정을 제공하고 비용 최적화 컨트롤을 제공합니다.

Azure Database for PostgreSQL의 이점

Azure Database for PostgreSQL은 가용성이 뛰어난 서비스입니다. 기본 제공되는 오류 검색 및 장애 조치(failover) 메커니즘을 포함합니다.

PostgreSQL 사용자는 PostgreSQL 데이터베이스를 관리하고 모니터링하는 데 사용할 수 있는 pgAdmin 도구에 익숙해질 것입니다. 이 도구를 계속 사용하여 Azure Database for PostgreSQL에 연결할 수 있습니다. 그러나 서버가 Microsoft에 의해 관리 및 유지 관리되기 때문에 서버 백업 및 복원과 같은 일부 서버 기능은 사용할 수 없습니다.

Azure Database for PostgreSQL은 서버에 있는 데이터베이스에 대해 실행되는 쿼리에 대한 정보를 기록하고 azure_sys라는 데이터베이스에 저장합니다. 이 정보를 보려면 query_store qs_view 보기를 쿼리하고 이 정보를 사용하여 사용자가 실행하는 쿼리를 모니터링합니다. 이 정보는 애플리케이션에서 수행하는 쿼리를 세부 조정해야 하는 경우에 유용합니다.