[MySQL] MySQL DETERMINISTIC
MySQLDETERMINISTICFunctionProcedure데이터베이스Performance Optimization
AI 요약
Beta이 글은 MySQL의 Function 및 Procedure에서 DETERMINISTIC 옵션이 미치는 영향에 대해 설명합니다. DETERMINISTIC은 동일한 입력에 대해 항상 동일한 결과를 반환하는 함수를 의미하며, 기본값은 NOT DETERMINISTIC입니다.
NOT DETERMINISTIC 함수는 RAND()나 UUID()처럼 상수 값을 생성하지 않아 옵티마이저가 인덱스 조회와 같은 최적화 전략을 적용하기 어렵습니다. Stored procedure나 Function이 NOT DETERMINISTIC으로 정의되면, MySQL은 매번 새로운 호출을 통해 결과를 비교하게 되어 성능 저하를 유발할 수 있습니다.
따라서 함수가 결정적임을 보장할 수 있다면 명시적으로 DETERMINISTIC을 지정하여 성능 최적화를 도모하는 것이 중요합니다.
이 글이 궁금하신가요?
원문 블로그에서 전체 내용을 확인해 보세요
원문 읽으러 가기

