Key Visualizer 개요

Key Visualizer란 무엇인가요?

Key Visualizer를 사용하면 Spanner 사용 패턴을 분석할 수 있습니다. 시간 경과에 따라 행 범위로 세분화된 데이터베이스의 시각적 보고서를 생성합니다.

다른 방법으로는 사용 패턴을 확장된 규모로 이해하기 어려운데 Key Visualizer를 활용하면 도움됩니다. Key Visualizer 용도는 다음과 같습니다.

  • 스키마를 반복적으로 설계하거나 기존 스키마의 설계 개선. 각 반복에서 Key Visualizer를 확인하여 스키마로 인해 발생할 수 있는 문제를 찾아 스키마를 조정하고 다시 확인합니다.
  • 쿼리와 작업에서 리소스를 사용하는 방법을 파악하도록 성능 문제를 해결합니다.
  • 사용자와 애플리케이션이 Spanner에 저장한 데이터에 액세스하는 방법을 이해합니다.

위 목표를 달성하기 위해 Key Visualizer를 통해 다음 태스크를 수행할 수 있습니다.

  • 읽기 또는 쓰기가 특정 행 범위에서 핫스팟을 만들고 있는지 확인합니다.
  • 테이블의 모든 행에서 액세스 패턴이 균형을 이루고 있는지 확인합니다.

Key Visualizer는 다양한 측정항목을 표시하지만 Spanner 성능에 영향을 줄 수 있는 모든 항목을 캡처하지는 않습니다. 예를 들어 애플리케이션과 Google Cloud 사이에 네트워크 문제가 있는 경우 해당 네트워크 문제가 표시되지 않거나 Key Visualizer의 모든 키에서 수직 밴드로 표시되어 문제가 발생한 시점에 대한 힌트만 제공합니다. Key Visualizer 검사를 통해 성능 문제의 원인을 식별할 수 없는 경우 추가적인 문제해결 과정이 필요합니다.

Key Visualizer 검사

다음 이미지는 Key Visualizer 검사를 보여줍니다. 각 검사에는 다음과 같은 몇 가지 유형의 정보가 포함되어 있습니다.

  • 시간 경과에 따라 행 키 그룹에 대한 액세스 패턴을 표시하는 대규모 히트맵
  • 평균값과 합계값 또는 최댓값을 포함하여 히트맵의 각 축에 따른 값 집계.

Key Visualizer 검사 예

Key Visualizer는 각 검사의 데이터를 이해하는 데 도움이 되는 도구도 제공합니다. 이전에 Key Visualizer를 사용한 적이 없는 경우 Key Visualizer 시작하기의 안내를 참조하세요. 능숙한 사용자라면 히트맵 탐색을 참조하세요.

히트맵

Key Visualizer 검사의 핵심은 히트맵입니다. 히트맵은 시간 경과에 따른 측정항목 값을 인접한 범위의 row key로 세분화하여 표시합니다. 히트맵의 x축은 시간을 나타내고 y축은 행 범위를 나타냅니다. 특정 시점에서 측정항목의 행 범위에 대한 값이 낮으면 측정항목은 '콜드' 상태이며 어두운 색으로 표시됩니다. 높은 값은 '핫' 상태이며 밝은 색으로 표시됩니다. 가장 높은 값은 흰색으로 표시됩니다.

사용 유형이 달라지면 히트맵의 시각적 패턴이 달라지므로 한눈에 문제를 진단할 수 있습니다. 일반적인 패턴의 예시는 히트맵 패턴을 참조하세요.

행 범위

행 범위는 단일 테이블이나 색인 내에서 연속된 행 집합이며 시작 키와 종료 키로 정의됩니다.

Spanner 데이터베이스는 일반적으로 여러 테이블과 색인을 사용합니다. Key Visualizer는 전체 데이터베이스의 모든 테이블과 색인에 있는 기존 키를 기준으로 행 범위를 최대 1,000개까지 선택합니다. 히트맵에서 각 키는 먼저 테이블이나 색인 이름에 따라 알파벳순으로 정렬됩니다. 각 테이블이나 색인 내에서 키는 기본 키 값별로 정렬됩니다. 따라서 행 범위는 단일 테이블이나 색인의 키로만 구성됩니다. 인터리브 처리된 테이블의 경우 상위 테이블의 행 범위에는 인터리브 처리된 하위 테이블의 키가 포함되지 않습니다.

Key Visualizer는 행 범위를 최대 1,000개까지 선택합니다. 테이블과 색인 조합이 1,000개를 초과하면 이러한 테이블 중 일부가 히트맵의 단일 데이터 포인트로 롤업되어 한 줄로 표시됩니다. 따라서 테이블을 조합하고 다운샘플링하면 잠재적 핫스팟을 감지하기 어려울 수 있습니다.

테이블 및 색인이 1,000개 미만인 경우 히트맵에는 모든 테이블을 나타내는 행 범위가 최소 한 개 이상 있습니다.

다음 단계