Spanner 열 기반 엔진 개요

이 페이지에서는 Spanner의 열 기반 엔진을 간략하게 설명하고 사용 방법을 설명합니다.

운영 데이터베이스는 일반적으로 분석을 위해 OLAP 시스템으로 데이터를 추출, 변환, 로드 (ETL)합니다. 이 시스템은 데이터 웨어하우스의 일부인 경우가 많습니다. Data Boost를 사용하면 Spanner에서 이미 분석 컴퓨팅을 분리하여 트랜잭션 안정성을 보장합니다.

열 기반 엔진은 분석 시스템에서 일괄 기반 검색에 비해 검색 속도를 높이는 데 사용하는 스토리지 기술입니다. Spanner 열 형식 엔진을 사용하면 최신 운영 데이터에 대해 성능이 크게 향상된 분석을 실행할 수 있습니다. Spanner 열 기반 엔진은 스캔 성능을 최대 200배까지 향상시켜 ETL의 필요성을 없애면서도 강력한 일관성을 유지합니다.

Spanner의 Ressi 형식은 데이터 블록 내에서 효율적인 검색을 위해 파티션 속성 교차 (PAX) 열별 레이아웃을 사용합니다. 하지만 이 형식은 빠른 단일 행 조회를 위해 지정된 블록 내에 행의 모든 열을 공동 배치합니다. Ressi와 달리 Spanner의 열 형식 엔진은 블록 실행을 단일 열에 전용으로 사용합니다. 이 접근 방식은 Spanner가 쿼리에서 참조된 열만 읽으면 되므로 순차 스캔에 더 효율적입니다.

Spanner는 백그라운드에서 열 형식 표현을 빌드하고 (압축의 일부로) 쿼리 시간에 표현을 최신 업데이트와 자동으로 병합하여 strong consistency를 제공합니다. 열 형식 스토리지를 활용할 수 없는 쿼리는 계속해서 PAX를 사용할 수 있습니다.

열 기반 엔진을 사용하면 좋은 워크로드는 다음과 같습니다.

  • 운영 보고서는 최신 운영 데이터에서 실시간 비즈니스 인텔리전스를 추출합니다.
  • 대화형 지연 시간으로 분석 기능 대시보드와 맞춤 드릴다운을 제공했습니다.
  • 제휴 분석은 BigQuery에서 Spanner 및 기타 소스의 데이터를 원활하게 결합합니다.

Spanner 인스턴스 백업에는 열 형식이 포함되지 않습니다.

열 형식 엔진 사용 권장사항

이 섹션에서는 열 형식 엔진을 사용할 때의 권장사항을 설명합니다.

대규모 스캔 최적화

열 기반 엔진은 대량의 데이터를 검색하는 쿼리를 최적화합니다. 데이터 스캔이 더 작거나 LIMIT 절이 빠르게 충족되는 쿼리의 경우 행 기반 스캔이 더 효율적일 수 있습니다.

필수 열

SELECT *를 사용하면 Spanner가 열 형식 스토리지에서 모든 열을 읽습니다. 실적을 극대화하려면 필요한 열만 지정하세요. 예를 들면 SELECT column1, column2 FROM ...입니다.

성능 병목 현상 식별

열 기반 엔진은 스캔 바운드 워크로드에 효과적입니다. 스캔 제한 워크로드를 식별하려면 테이블 스캔 노드에서 지연 시간 수준이 높은 쿼리 계획을 확인하세요. 쿼리가 스캔에 바인딩되지 않은 경우 다른 최적화를 먼저 우선시합니다. 최적화로 인해 쿼리가 스캔 바운드가 되는 경우 나중에 열 형식 엔진이 이점을 제공할 수 있습니다.

최적의 열 형식 지원 범위

이미 데이터가 포함된 데이터베이스에서 열 형식 엔진을 사용 설정하면 Spanner의 자동 압축 프로세스가 백그라운드에서 비동기식으로 데이터를 열 형식 스토리지로 변환합니다. 쿼리의 이점을 확인하려면 쿼리 계획에서 열 형식 읽기 점유율 비율을 확인하세요.

높은 앱 제거 데이터 관리

업데이트 또는 무작위 삽입으로 인한 높은 쓰기 속도는 열 기반 엔진의 성능에 영향을 줄 수 있습니다. 열 형식 엔진을 사용하면 추가 전용 워크로드에 미치는 영향이 최소화됩니다. 압축은 백그라운드 프로세스이며 일반적으로 여러 날에 걸쳐 이루어지지만 데이터베이스 크기가 크게 증가하면 더 빨리 발생할 수 있습니다. 또는 분할 수준에서 추가 전용 쓰기를 선호하도록 스키마를 설계합니다. 자세한 내용은 Spanner에서 타임스탬프 주문형 데이터 샤딩을 참고하세요.

가격 책정

Spanner 열 기반 엔진의 청구는 스토리지 사용량을 기준으로 합니다. Spanner 열 형식 엔진을 사용 설정하고 Spanner에서 데이터 압축을 완료하면 새 열 형식 표현을 포함하도록 스토리지 사용량이 증가합니다. 열 기반 엔진은 스토리지에 미치는 영향을 모니터링할 수 있는 스토리지 측정항목을 제공합니다. 자세한 내용은 열 형식 데이터 스토리지 측정항목을 참고하세요.

Spanner 열 형식 엔진은 셀당 8바이트 오버헤드의 영향을 받지 않습니다.

제한사항 미리보기

  • Spanner에 직접 또는 BigQuery EXTERNAL_QUERY를 사용하여 실행하는 쿼리에 대해 열 형식 읽기를 사용 설정하려면 명시적 힌트를 사용해야 합니다. 자세한 내용은 열 형식 데이터 쿼리를 참고하세요.
  • 열 기반 엔진은 GoogleSQL 인터페이스만 지원합니다.
  • 선택적 필터가 없는 스캔은 개선 효과가 적을 수 있습니다.

다음 단계