Amazon Redshift의 성능 데이터
Amazon Redshift에 CloudWatch 지표를 사용하면 클러스터의 상태 및 성능에 대한 정보와 노드 수준의 정보를 얻을 수 있습니다. 단, 이 지표를 사용할 때는 각 지표마다 차원이 1개 이상 연결되어 있다는 점을 알고 있어야 합니다. 이러한 차원은 적용 대상 지표를 알려주고 지표의 범위를 나타냅니다. Amazon Redshift에는 다음과 같은 2가지 차원이 있습니다.
-
NodeID
차원을 갖는 지표는 클러스터 노드의 성능 데이터를 제공하는 지표입니다. 이러한 지표 집합에는 리더와 컴퓨팅 노드가 포함됩니다. 예를 들면CPUUtilization
,ReadIOPS
,WriteIOPS
등이 있습니다. -
ClusterIdentifier
차원만 갖고 있는 지표는 클러스터의 성능에 대한 데이터를 제공하는 지표입니다. 이러한 지표의 예로는HealthStatus
와MaintenanceMode
가 있습니다.참고
일부 지표의 경우에는 각 클러스터의 지표가 노드 특성의 합계를 의미합니다. 이때는 리더 노드의 특성이 컴퓨팅 노드와 합산되기 때문에 지표 값을 해석할 때는 주의가 필요합니다.
CloudWatch 지표 및 차원에 대한 내용은 Amazon CloudWatch User Guide의 CloudWatch concepts을 참조하세요.
Amazon Redshift용 CloudWatch 지표에 대한 자세한 설명은 다음 섹션을 참조하세요.
Amazon Redshift 지표
AWS/Redshift
네임스페이스에 포함된 지표는 다음과 같습니다. 달리 명시되지 않는 한, 지표는 1분 간격으로 수집됩니다.
지표 | 설명 |
---|---|
CommitQueueLength |
주어진 시점에 커밋을 기다리는 트랜잭션의 수입니다. 단위: 개 차원: |
ConcurrencyScalingActiveClusters |
주어진 시간에 능동적으로 쿼리를 처리 중인 동시성 확장 클러스터의 수입니다. 단위: 개 차원: |
ConcurrencyScalingSeconds |
활성 쿼리 처리 활동이 있는 동시성 확장 클러스터에서 사용하는 시간(초)입니다. 단위: 개 차원: |
CPUUtilization |
CPU 사용 백분율. 클러스터의 경우, 이 지표는 모든 노드(리더 및 컴퓨팅)의 CPU 사용 값을 집계한 결과를 의미합니다. 단위: 백분율 Dimensions: 차원: |
DatabaseConnections |
클러스터에 대한 데이터베이스 연결 수 단위: 개 차원: |
HealthStatus |
클러스터가 데이터베이스에 연결되어 간단한 쿼리를 실행할 때마다 클러스터의 상태를 나타냅니다. 이 작업을 성공적으로 실행할 수 있다면 클러스터는 정상 상태입니다. 그렇지 않다면 비정상 상태입니다. 비정상 상태는 클러스터 데이터베이스의 데이터 로드가 너무 많거나, 혹은 클러스터 데이터베이스에 구성 문제가 있을 때 발생합니다. 참고Amazon CloudWatch에서는 이 지표가 1 또는 0으로 보고되는 반면 Amazon Redshift 콘솔에서는 편의를 위해 이 지표가 단위: 개수 (1/0)(Amazon Redshift 콘솔의 경우 차원: |
MaintenanceMode |
클러스터가 현재 유지 관리 모드인지 여부를 나타냅니다. 참고Amazon CloudWatch에서는 이 지표가 1 또는 0으로 보고되는 반면 Amazon Redshift 콘솔에서는 편의를 위해 이 지표가 단위: 개수 (1/0)(Amazon Redshift 콘솔의 경우 차원: |
MaxConfiguredConcurrencyScalingClusters |
파라미터 그룹에서 구성된 최대 동시성 확장 클러스터 수입니다. 자세한 내용은 Amazon Redshift 파라미터 그룹 단원을 참조하십시오. 단위: 개 차원: |
NetworkReceiveThroughput |
노드 또는 클러스터의 데이터 수신 속도 단위: 바이트/초(Amazon Redshift 콘솔의 경우 MB/초) Dimensions: 차원: |
NetworkTransmitThroughput |
노드 또는 클러스터의 데이터 쓰기 속도 단위: 바이트/초(Amazon Redshift 콘솔의 경우 MB/초) Dimensions: 차원: |
PercentageDiskSpaceUsed |
사용된 디스크 공간 비율 단위: 백분율 차원: Dimensions: |
QueriesCompletedPerSecond |
초당 완료된 평균 쿼리 수입니다. 5분 간격으로 보고됩니다. 단일 노드 클러스터에서는 이 지표가 지원되지 않습니다. 단위: 개수/초 Dimensions: Dimensions: |
QueryDuration |
쿼리를 완료하는 데 걸리는 평균 시간입니다. 5분 간격으로 보고됩니다. 단일 노드 클러스터에서는 이 지표가 지원되지 않습니다. 단위: 마이크로초 차원: Dimensions: 차원: |
QueryRuntimeBreakdown |
쿼리 단계에서 실행한 총 쿼리 시간입니다. 5분 간격으로 보고됩니다. 단위: 밀리초 차원: ClusterIdentifier, NodeID, stage 차원: ClusterIdentifier, stage |
ReadIOPS |
초당 평균 디스크 I/O 연산 수. 단위: 개수/초 Dimensions: 차원: |
ReadLatency |
디스크 I/O 연산당 평균 처리 시간. 단위: 초 Dimensions: 차원: |
ReadThroughput |
초당 디스크에서 읽은 평균 바이트 수입니다. 단위: 바이트(Amazon Redshift 콘솔의 경우 GB/초) Dimensions: 차원: |
RedshiftManagedStorageTotalCapacity |
관리형 스토리지의 총 용량입니다. 단위: 메가바이트 차원: |
TotalTableCount |
특정 시점에 열린 사용자 테이블의 수입니다. 이 합계에는 Amazon Redshift Spectrum 테이블이 포함되지 않습니다. 단위: 개 차원: |
WLMQueueLength |
워크로드 관리(WLM) 대기열을 입력하기 위해 대기하는 쿼리 수입니다. 단위: 개 Dimensions: Dimensions: |
WLMQueueWaitTime |
워크로드 관리(WLM) 대기열에서 대기하는 데 소요된 총 쿼리 시간. 5분 간격으로 보고됩니다. 단위: 밀리초 Dimensions: Dimensions: Dimensions: |
WLMQueriesCompletedPerSecond |
워크로드 관리(WLM) 대기열에 대해 완료된 초당 평균 쿼리 수입니다. 5분 간격으로 보고됩니다. 단일 노드 클러스터에서는 이 지표가 지원되지 않습니다. 단위: 개수/초 Dimensions: Dimensions: |
WLMQueryDuration |
워크로드 관리(WLM) 대기열에 대해 쿼리를 완료하는 데 걸리는 평균 시간입니다. 5분 간격으로 보고됩니다. 단일 노드 클러스터에서는 이 지표가 지원되지 않습니다. 단위: 마이크로초 Dimensions: Dimensions: |
WLMRunningQueries |
WLM 대기열 1개당 기본 클러스터 및 동시성 확장 클러스터 모두에서 실행되는 쿼리의 수입니다. 단위: 개 Dimensions: Dimensions: |
WriteIOPS |
초당 커밋 작업의 평균 수. 단위: 개수/초 Dimensions: 차원: |
WriteLatency |
디스크 I/O 연산당 평균 처리 시간. 단위: 초 Dimensions: 차원: |
WriteThroughput |
초당 디스크에 쓴 평균 바이트 수. 단위: 바이트(Amazon Redshift 콘솔의 경우 GB/초) Dimensions: 차원: |
SchemaQuota |
스키마에 대해 구성된 할당량입니다. 단위: 메가바이트 차원: 주기적/푸시: 빈도: 중지 조건: 스키마가 삭제되거나 할당량이 제거됨 |
NumExceededSchemaQuotas |
할당량이 초과된 스키마 수입니다. 단위: 개 차원: 주기적/푸시: 빈도: 중지 기준: 해당 사항 없음 |
StorageUsed |
스키마에서 사용하는 디스크 또는 스토리지 공간입니다. 단위: 메가바이트 차원: 주기적/푸시: 빈도: 중지 조건: 스키마가 삭제되거나 할당량이 제거됨 |
PercentageQuotaUsed |
구성된 스키마 할당량을 기준으로 사용된 디스크 또는 스토리지 공간의 백분율입니다. 단위: 백분율 차원: 주기적/푸시: 빈도: 중지 조건: 스키마가 삭제되거나 할당량이 제거됨 |
UsageLimitAvailable |
FeatureType에 따라 UsageLimitAvailable은 다음을 반환합니다.
단위: 분 또는 TB 차원: |
UsageLimitConsumed |
FeatureType에 따라 UsageLimitConsumed는 다음을 반환합니다.
단위: 분 또는 TB 차원: |
Amazon Redshift 지표의 차원
Amazon Redshift 데이터는 다음 표의 차원 중 하나와 함께 필터링할 수 있습니다.
측정기준 | 설명 |
---|---|
latency
|
가능한 값은 다음과 같습니다.
|
NodeID
|
클러스터 노드 고유의 요청 데이터를 필터링합니다. 지표는 |
ClusterIdentifier
|
클러스터 고유의 요청 데이터를 필터링합니다. 클러스터 고유의 지표로는 |
service class
|
|
stage
|
쿼리 실행 단계 가능한 값은 다음과 같습니다.
|
wlmid
|
워크로드 관리 대기열에 대한 식별자입니다. |
QueryPriority
|
쿼리의 우선순위입니다. 가능한 값은 |
QueueName
|
워크로드 관리 대기열의 이름입니다. |
FeatureType
|
사용량 한도로 제한되는 기능입니다. 가능한 값은 |
UsageLimitId
|
사용량 한도의 식별자입니다. |
Amazon Redshift 쿼리 및 로드 성능 데이터
Amazon Redshift는 CloudWatch 지표 외에도 쿼리 및 로드 성능 데이터를 제공합니다. 쿼리/로드 성능 데이터는 데이터베이스 성능과 클러스터 지표의 관계를 이해하는 데 유용합니다. 예를 들어 클러스터의 CPU가 급증한 것을 확인한 경우에는 클러스터 CPU 그래프에서 급증한 부분을 찾아 해당 시간에 실행된 쿼리를 살펴볼 수 있습니다. 반대로 특정 쿼리를 살펴볼 때는 지표 데이터(CPU 등)가 상황에 맞게 표시되어 쿼리가 클러스터 지표에 미치는 영향을 이해할 수 있습니다.
쿼리 및 로드 성능 데이터는 CloudWatch 지표로 게시되지 않기 때문에 Amazon Redshift 콘솔에서만 확인할 수 있습니다. 쿼리 및 로드 성능 데이터는 데이터베이스의 시스템 테이블을 사용한 쿼리에서 생성됩니다(자세한 내용은 Amazon Redshift 개발자 안내서의 시스템 테이블 참조 참조). 사용자 지정 데이터베이스 성능 쿼리를 직접 작성할 수도 있지만 처음에는 콘솔에서 제공되는 쿼리/로드 성능 데이터를 사용하는 것이 좋습니다. 데이터베이스 성능을 직접 측정하고 모니터링하는 방법에 대한 자세한 내용은 Amazon Redshift 개발자 안내서의 성능 관리를 참조하세요.
다음은 Amazon Redshift 콘솔에서 액세스할 수 있는 쿼리/로드 데이터의 여러 가지 요소를 설명한 표입니다.
쿼리/로드 데이터 | 설명 |
---|---|
쿼리 요약 |
특정 시간대에 실행된 쿼리 목록입니다. 이 목록은 쿼리 ID, 쿼리 실행 시간, 상태 등의 값을 기준으로 정렬할 수 있습니다. 클러스터 세부 정보 페이지의 쿼리 모니터링 탭에 이 데이터가 표시됩니다. |
쿼리 세부 정보 |
다음을 포함하여 특정 쿼리에 대한 세부 정보를 제공합니다.
|
로드 요약 |
지정 시간대의 모든 로드 목록입니다. 이 목록은 쿼리 ID, 쿼리 실행 시간, 상태 등의 값을 기준으로 정렬할 수 있습니다. 클러스터 세부 정보 페이지의 쿼리 모니터링 탭에 이 데이터가 표시됩니다. |
로드 세부 정보 |
다음을 포함하여 특정 로드 작업에 대한 세부 정보를 제공합니다.
|