성능 조정은 CPU 사용률 및 지연 시간과 같은 측정항목을 평가하고, 스키마 및 애플리케이션을 조정하여 성능을 개선하고, 다시 테스트하는 반복적인 프로세스입니다.
예를 들어 스키마에서 색인을 추가 또는 변경하거나 기본 키를 변경할 수 있습니다. 애플리케이션에서 일괄 쓰기를 수행하거나 쿼리를 병합 또는 수정할 수 있습니다.
특히 프로덕션 트래픽의 경우 예상치 못한 상황을 방지하기 위해 성능 조정이 중요합니다. 성능 조정은 설정이 프로덕션 트래픽 처리량 및 데이터 크기에 가까울수록 더 효과적입니다.
스키마 및 애플리케이션 성능을 테스트하고 조정하려면 다음 단계를 따르세요.
- 데이터의 하위 집합을 Spanner 데이터베이스에 업로드합니다. BigQuery 역방향 ETL 워크플로를 사용하여 샘플 데이터를 로드할 수 있습니다. 자세한 내용은 샘플 데이터 로드를 참조하세요.
- 애플리케이션이 Spanner를 가리키도록 합니다.
- 기본 흐름을 확인하여 데이터베이스 일관성을 확인합니다.
- 애플리케이션에서 부하 테스트를 수행하여 성능이 기대치를 충족하는지 확인합니다. 가장 비용이 많이 드는 쿼리를 식별하고 최적화하는 데 도움이 필요한 경우 쿼리 통계로 쿼리 성능 문제 감지를 참조하세요.
특히 다음 요소는 최적이 아닌 쿼리 성능에 기여할 수 있습니다.
- 비효율적인 쿼리: 효율적인 쿼리 작성에 대한 자세한 내용은 SQL 권장사항을 참조하세요.
- 높은 CPU 사용률: 자세한 내용은 높은 CPU 사용률 조사를 참조하세요.
- 잠금: 트랜잭션 잠금으로 인한 병목 현상을 줄이려면 긴 지연 시간을 일으킬 수 있는 트랜잭션 식별을 참조하세요.
- 비효율적인 스키마 설계: 스키마가 제대로 설계되지 않으면 쿼리 최적화는 그다지 유용하지 않습니다. 우수한 스키마 설계 방법에 관한 자세한 내용은 스키마 설계 권장사항을 참조하세요.
- 부하 집중: Spanner의 부하 집중은 특히 QPS가 높은 애플리케이션의 쓰기 처리량을 제한합니다. 부하 집중 또는 스키마 설계 문제를 식별하려면 Google Cloud 콘솔에서 Key Visualizer 통계를 확인합니다. 부하 집중 방지에 대한 자세한 내용은 부하 집중을 방지하기 위한 기본 키 선택을 참조하세요.
- 스키마 또는 색인을 수정하는 경우 만족스러운 결과를 얻을 때까지 데이터베이스 일관성 및 성능 테스트를 반복합니다.
데이터베이스 성능 세부 조정에 대한 자세한 내용은 Spanner 지원팀에 문의하세요.