핵심 용어

Cloud SQL을 효과적으로 사용하려면 몇 가지 기본 개념을 이해해야 합니다. 이 페이지는 Cloud SQL에 적용되는 핵심 용어와 개념을 간략히 설명합니다.

Cloud SQL 사용법 소개는 Cloud SQL 개요를 참조하세요.

Cloud SQL 인스턴스

Cloud SQL 인스턴스는 하나의 가상 머신(VM)에 해당합니다. VM에는 데이터베이스 인스턴스 및 관련 소프트웨어 컨테이너가 포함되어 데이터베이스 인스턴스가 실행 상태로 유지됩니다.

데이터베이스 인스턴스

데이터베이스 인스턴스는 MySQL, PostgreSQL, SQL Server와 같은 데이터베이스를 사용하는 소프트웨어와 파일 모음입니다.

공개 IP와 비공개 IP

Cloud SQL에서 공개 IP는 공개 인터넷을 통해 인스턴스에 액세스할 수 있다는 의미입니다. 이와 반대로 공개 인터넷을 통해 비공개 IP만 사용하는 인스턴스에 액세스할 수 없지만 Virtual Private Cloud(VPC)를 통해서는 액세스할 수 있습니다. Cloud SQL 인스턴스에는 공개 및 비공개 IP 주소가 모두 있을 수 있습니다.

고가용성

고가용성(HA)을 사용하는 Cloud SQL 인스턴스는 HA가 아닌 인스턴스보다 높은 안정성을 제공합니다.

Cloud SQL의 HA는 두 개의 동기화된 인스턴스(기본 인스턴스와 대기 인스턴스)를 통해 작동합니다. 각 인스턴스에는 정확히 하나의 VM이 있습니다. 각 인스턴스는 같은 리전의 다른 영역에 있습니다.

장애 조치

장애 조치는 Cloud SQL이 원본 기본 인스턴스에서 대기 인스턴스로 전환하는 경우입니다.

자동 장애 조치는 Cloud SQL 인스턴스가 이전 간격으로 하트비트를 실행하지 않을 때 장애 조치를 자동으로 트리거하는 메커니즘입니다.

대기 인스턴스

대기 인스턴스는 고가용성에서 장애 조치 발생 시 기본 인스턴스를 대체하는 데 사용됩니다. 대기 인스턴스는 Google Cloud Console에 표시되지 않습니다. 장애 조치가 발생하면 기본 인스턴스에 대한 연결이 자동으로 대기 인스턴스로 전송됩니다.

클론

Cloud SQL 인스턴스를 클론하면 소스 인스턴스의 복사본이지만 완전히 독립적인 새 인스턴스가 생깁니다. 클론이 완료되면 소스 인스턴스의 변경사항이 클론에 반영되지 않고 클론의 변경사항이 소스 인스턴스에 반영되지 않습니다.

복제

복제는 Cloud SQL 인스턴스 또는 온프레미스 데이터베이스의 복사본을 만들고 복사본에 대한 작업을 오프로드하는 기능입니다. 복제를 사용하는 주된 이유는 기본 인스턴스에서 성능을 저하시키지 않고 데이터베이스의 데이터 사용을 확장하는 것입니다.

읽기 복제본

읽기 복제본은 기본 인스턴스의 정확한 복사본입니다. 기본 인스턴스의 데이터와 기타 변경사항은 거의 실시간으로 읽기 복제본에 업데이트됩니다. 쓰기 트랜잭션을 기본 인스턴스로, 읽기 요청을 읽기 복제본으로 보냅니다. 읽기 복제본은 쿼리, 읽기 요청, 분석 트래픽을 처리하므로 기본 인스턴스의 부하가 줄어듭니다.

소스 서버

복제는 기본 인스턴스의 트랜잭션을 하나 이상의 읽기 복제본으로 복사합니다. 기본 인스턴스를 소스 서버라고도 합니다. 소스 서버는 Cloud SQL 기본 인스턴스이거나 온프레미스 서버 또는 다른 클라우드에서 실행되는 서버와 같이 Google Cloud 외부의 서버일 수 있습니다. 소스 서버가 Google Cloud 외부에 있으면 이를 Replication from an external server라고 합니다.

Cloud SQL 인증 프록시 클라이언트

Cloud SQL 인증 프록시 클라이언트는 Cloud SQL에서 관리하는 오픈소스 소프트웨어입니다. Cloud SQL 인스턴스에서 실행되는 Cloud SQL 인증 프록시 서버인 컴패니언 프로세스에 연결됩니다. 자체 서버에서 Cloud SQL 인증 프록시 클라이언트를 실행합니다. Cloud SQL 인증 프록시 클라이언트는 데이터베이스 인스턴스에 대한 보안 SSL/TLS 연결을 설정하거나 방화벽이 열리는 것을 방지하는 데 사용될 수 있습니다. 인증은 Identity and Access Management(IAM)를 통해 수행됩니다.

클러스터링된 색인

디스크에서 행을 물리적으로 정렬하는 MySQL 테이블의 기본 색인입니다. 테이블에 기본 키를 정의하면 MySQL은 이를 클러스터링된 색인으로 사용합니다. 테이블에는 클러스터링된 색인이 한 개만 있을 수 있습니다.

보조 색인

쿼리 성능을 최적화하는 MySQL 테이블의 추가 색인입니다.