이 페이지에서는 Spanner에서 계층형 스토리지가 작동하는 방식을 설명합니다. 이 기능은 GoogleSQL 언어 데이터베이스와 PostgreSQL 언어 데이터베이스 모두에서 지원됩니다.
Spanner 계층형 스토리지는 데이터를 솔리드 스테이트 드라이브 (SSD)에 저장할지 하드 디스크 드라이브 (HDD)에 저장할지 선택할 수 있는 완전 관리형 스토리지 기능입니다. 기본적으로 계층형 스토리지를 사용하지 않으면 데이터가 SSD 스토리지에 저장됩니다. 데이터를 사용하거나 액세스하는 빈도에 따라 계층형 스토리지를 사용하고 SSD 및 HDD 스토리지 모두에 데이터를 저장하는 것이 좋습니다.
- SSD 스토리지는 대부분의 사용 사례에서 가장 높은 성능 (초당 더 많은 쿼리)과 비용 효율성을 제공합니다. 쓰기 및 읽기 처리량이 높고 지연 시간이 짧은 데이터 액세스가 필요한 활성 데이터를 저장하는 데 사용해야 합니다.
- 지연 시간에 민감하지 않거나 자주 액세스하지 않는 대규모 데이터 세트 또는 스토리지 비용이 중요한 고려사항인 경우 HDD 스토리지가 적합할 수 있습니다.
계층형 스토리지를 사용하면 활성 데이터의 높은 성능을 지원하는 SSD 스토리지와 적은 비용으로 빈번하지 않은 데이터 액세스를 지원하는 HDD 스토리지를 모두 활용할 수 있습니다.
SSD와 HDD 스토리지 중 선택
다음 표에는 SSD 저장소와 HDD 저장소의 차이점과 유사점이 나와 있습니다. 확실하지 않은 경우 SSD 스토리지를 선택하는 것이 좋습니다.
SSD 스토리지 | HDD 스토리지 | |
---|---|---|
타겟팅 사용 사례 | 높은 쓰기 및 읽기 처리량과 짧은 지연 시간 데이터 액세스가 필요한 데이터 | 지연 시간에 민감하지 않거나 자주 액세스하지 않는 대규모 데이터 세트 |
노드당 예상 처리량 리전 구성 |
쓰기 최대 3,500QPS 읽기 최대 22,500QPS |
쓰기 최대 3,500QPS 읽기 최대 1,500QPS |
노드당 예상 처리량 이중 리전 및 멀티 리전 구성 |
쓰기 최대 2,700QPS 읽기 최대 15,000QPS |
쓰기 최대 3,500QPS 읽기 최대 1,000QPS |
지원되는 작업 | 읽기, 쓰기, 업데이트, 삭제 | 읽기, 쓰기, 업데이트, 삭제 |
이점
계층형 스토리지를 사용하면 SSD 스토리지와 HDD 스토리지를 모두 사용할 수 있으므로 다음과 같은 이점이 있습니다.
- 총소유비용(TCO) 상당히 절감: HDD 스토리지는 지연 시간에 민감하지 않거나 자주 액세스하지 않는 대규모 데이터 세트를 위한 저렴한 옵션을 제공합니다.
- 관리 용이성: 추가 파이프라인과 분할 로직의 복잡성 없이 완전 관리형 계층화 서비스를 제공합니다.
- 통합되고 일관된 환경: 핫 데이터와 (변경 가능한) 콜드 데이터 전반에서 통합된 데이터 액세스 및 단일 측정항목 집합을 제공합니다.
- 성능 향상: 여러 지역 그룹으로 데이터를 구성하여 쿼리 성능을 개선합니다. 이렇게 하면 열 전체에 데이터 지역성 및 격리가 제공됩니다. 동일한 지역 그룹의 데이터는 물리적으로 서로 가까이에 저장됩니다.
계층형 스토리지 작동 방식
기본적으로 새 인스턴스를 만들면 데이터가 SSD 스토리지에만 저장됩니다. 마찬가지로 기존 인스턴스의 데이터도 SSD 스토리지에만 저장됩니다.
계층형 스토리지를 사용하여 일부 데이터를 HDD 스토리지에 저장하는 경우 스키마의 데이터에 대한 계층형 스토리지 정책을 정의하는 데 사용되는 지역 그룹을 만들어야 합니다. 지역 그룹을 만들 때 스토리지 유형(ssd
또는 hdd
)을 정의할 수 있습니다. 원하는 경우 데이터가 HDD 스토리지로 이동하기 전에 SSD 스토리지에 저장되는 시간을 정의할 수도 있습니다. 지정된 시간이 지나면 Spanner는 일반적으로 지정된 시간으로부터 7일 이내에 발생하는 정상적인 압축 주기 중에 데이터를 HDD 스토리지로 이전합니다. 이를 기간 기반 계층형 스토리지 정책이라고 합니다. 기간 기반 계층형 스토리지 정책을 사용하는 경우 데이터가 HDD 스토리지로 이동하기 전에 SSD에 저장되어야 하는 최소 시간은 1시간입니다.
지역 그룹을 정의한 후 테이블을 만들 때 데이터베이스, 테이블, 열 또는 보조 색인 수준에서 계층식 스토리지 정책을 설정할 수 있습니다. 계층형 스토리지 정책은 데이터의 저장 방식과 저장 위치를 결정합니다. 자세한 내용은 지역 그룹 만들기 및 관리하기를 참고하세요.
백업 및 복원
Spanner 백업을 사용하여 데이터를 백업하고 복원할 수 있습니다.
백업에는 각 지역 그룹의 저장소 유형을 지정하는 INFORMATION_SCHEMA.LOCALITY_GROUP_OPTIONS
를 비롯한 모든 저장소 스키마 정보가 포함됩니다. 지역 그룹이 포함된 백업을 새 인스턴스에 복원하려면 대상 인스턴스가 Spanner Enterprise 버전 또는 Spanner Enterprise Plus 버전에 있어야 합니다.
Data Boost
Spanner Data Boost를 사용하여 SSD 또는 HDD 스토리지의 데이터에 액세스할 수 있습니다. HDD 스토리지에서 데이터를 쿼리하면 I/O 작업이 늘어나 비용이 더 많이 듭니다. 자세한 내용은 가격 책정을 참고하세요.
검색 색인
전체 텍스트 검색 및 벡터 색인은 데이터베이스 객체에 설정된 지역 그룹을 상속합니다.
관측 가능성
계층형 스토리지에는 다음과 같은 관측 가능성 기능이 제공됩니다.
Cloud Monitoring 측정항목
Spanner는 Cloud Monitoring을 사용하여 계층화된 스토리지 사용량과 데이터를 모니터링하는 데 도움이 되는 다음과 같은 측정항목을 제공합니다.
spanner.googleapis.com/instance/storage/used_bytes
(총 스토리지): SSD 및 HDD 스토리지에 저장된 총 데이터 바이트 수를 표시합니다. Google Cloud 콘솔 Spanner 인스턴스 및 데이터베이스 시스템 통계 페이지에는 이 측정항목의 저장소 유형 드롭다운 메뉴가 있습니다. 드롭다운을 사용하여 전체, HDD 전용 또는 SSD 전용 스토리지에 저장된 총 데이터 바이트 수를 표시합니다.spanner.googleapis.com/instance/storage/combined/limit_bytes
: SSD 및 HDD 스토리지 한도를 합산하여 표시합니다.spanner.googleapis.com/instance/storage/combined/limit_bytes_per_processing_unit
: 각 처리 단위의 SSD 및 HDD 스토리지 한도를 합산하여 표시합니다.spanner.googleapis.com/instance/storage/combined/utilization
: 결합된 SSD 및 HDD 스토리지 사용량을 결합된 스토리지 한도와 비교하여 표시합니다.spanner.googleapis.com/instance/disk_load
: HDD 사용량을 백분율로 표시합니다. 인스턴스의 디스크 부하가 100% 에 도달하면 지연 시간이 크게 늘어납니다.
기존 측정항목을 storage_class:ssd
로 필터링하는 기존 쿼리가 있는 경우 HDD 사용량을 보려면 필터를 삭제해야 합니다.
Spanner 리소스 모니터링에 대한 자세한 내용은 시스템 통계로 인스턴스 모니터링 및 Cloud Monitoring으로 인스턴스 모니터링을 참고하세요.
정보 스키마
INFORMATION_SCHEMA.LOCALITY_GROUP_OPTIONS
에는 Spanner 데이터베이스의 지역 그룹 및 옵션 목록이 포함됩니다. 여기에는 default
지역 그룹에 관한 정보가 포함됩니다. 자세한 내용은 GoogleSQL 언어 데이터베이스의 locality_group_options
및 PostgreSQL 언어 데이터베이스의 locality_group_options
를 참고하세요.
기본 제공 통계 표
계층형 스토리지를 사용하는 데이터베이스에서는 다음과 같은 내장 통계 표를 사용할 수 있습니다.
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
: 데이터베이스의 각 테이블에 대한 HDD 및 SSD 스토리지 사용량을 표시합니다.SPANNER_SYS.TABLE_SIZES_STATS_PER_LOCALITY_GROUP_1HOUR
: 데이터베이스의 각 지역 그룹에 대한 HDD 및 SSD 스토리지 사용량을 표시합니다.
자세한 내용은 테이블 크기 통계 및 쿼리 통계를 참고하세요.
가격 책정
계층형 스토리지를 사용하는 데 추가 요금은 발생하지 않습니다. 인스턴스에서 사용하는 컴퓨팅 용량과 데이터베이스에서 사용하는 스토리지 양에 표준 Spanner 가격 책정이 적용됩니다. SSD 및 HDD에 저장된 데이터는 각 스토리지 요율로 청구됩니다. SSD와 HDD 스토리지 간에 데이터를 이동하는 데는 요금이 청구되지 않습니다. 자세한 내용은 Spanner 가격 책정을 참조하세요.
다음 단계
- 지역 그룹에 대해 자세히 알아보세요.
- 지역 그룹을 만들고 관리하는 방법 알아보기
- 타임스탬프 조건자 푸시다운을 사용한 쿼리 최적화에 대해 자세히 알아보세요.