반응형
쿼리로 인해 CPU 활용률이 높아지고 지연 시간이 길어짐
다음 쿼리로 인해 데이터베이스 환경에서 CPU 사용률이 높아지고 대기 시간이 길어집니다.다른 유형의 인덱스로 쿼리 성능을 개선하려고 했지만 안타깝게도 성능 향상에 도움이 되지 않는 인덱스가 없습니다.쿼리를 다시 작성하여 동일한 결과를 얻을 수 있는 제안이 있습니까?
query
SELECT kln.qsw, kln.mngy
FROM (
SELECT kln2.mngy, MAX(kln2.nonUnixjdjf) dm_hj
FROM mfh.view_mats kln2
WHERE kln2.jdjf <= '2022-10-19 10:47:25.000000'
GROUP BY kln2.mngy
) pun_ghky
JOIN pun_ghky.mngy = kln.mngy);
이 지수는 다음에 도움이 될 것입니다.view_mats
:INDEX(mngy, nonUnixjdjf)
즉, 의 경우trip_dsty
:INDEX(mngy, jdjf)
.
그리고 (아마도) 떨어집니다.idx_n1
이 인덱스의 시작 부분만 포함하기 때문입니다.
(Columnstore에 대해 잘 알지 못합니다. 위의 조언은 InnoDB 인덱싱을 위한 것입니다. 여기에 적용될 수 있습니다.)
일반적으로,(m,n)
Float 및 Double은 유용하지 않으며 반올림 오차로 이어질 수 있습니다. double(20,10)
아마도 평범해야 할 것입니다.double
또는DECIMAL(20,10)
.
LIMIT 10000
정말 그렇게 많은 행을 고객에게 전달하는 겁니까?그만큼 삽질을 하는 것도 성능 문제입니다.
언급URL : https://stackoverflow.com/questions/74124189/query-causing-huge-cpu-utilization-and-high-latency
반응형
'programing' 카테고리의 다른 글
GPU에서 케라스 모델을 실행할 수 있습니까? (0) | 2023.07.17 |
---|---|
Firebase용 Cloud Functions에서 서버 타임스탬프를 가져오려면 어떻게 해야 합니까? (0) | 2023.07.12 |
T-SQL 하위 문자열 - 마지막 3자 (0) | 2023.07.12 |
엔티티 프레임워크 및 다중 스키마 (0) | 2023.07.12 |
중지: 알 수 없는 인스턴스 mongodb(Ubuntu) (0) | 2023.07.12 |