Oracle Function Result Cache
작용과 용법
Function에서 데이터 세트 캐시를 사용하면 함수 내부 조회 호출 횟수를 줄이고 효율을 높일 수 있으며, 특히 데이터 변동이 빈번하지 않은 (예: 조직 기구) 데이터에 적용된다.11g의 새로운 특성에 속한다.
CREATE OR REPLACE FUNCTION getOperatorNames (v_empIds varchar)
RETURN VARCHAR RESULT_CACHE
...
값, 유형을 반환한 후 RESULT_CACHE를 추가하면 됩니다.
보관 및 수명 주기
현재 데이터 원본에 통합하여 현재 데이터 사물이 발생함에 따라 리셋합니다.(11g release 1은 "RELIES_ON"[예: result_cache relies_on(tablename)]을 추가로 추가해야 합니다. 11g release 2는 필요하지 않습니다.
cached results can be directly coupled to their underlying data sources.This means that cached results are invalidated and regenerated when transactions occur against the underlying data.
함수를 재구성할 때 원래 캐시 데이터 상태가 잘못되면 새 캐시 데이터가 생성됩니다.(캐시 공간은'최근 최소 사용'알고리즘을 통해 유지보수됨) 다음과 같은 sql문을 통해 볼 수 있습니다.
SELECT id
, name
, type
, status
, invalidations
FROM v$result_cache_objects
ORDER BY
id;
모니터링
SELECT name, value
FROM v$result_cache_statistics
WHERE name IN ('Create Count Success','Find Count');
'Create Count Success'는 캐시 개수,'Find Count'는 적중 횟수로 이해할 수 있습니다.물론, v$result_cache_statistics에는 캐시 크기와 같은 다른 많은 정보가 있습니다.
일부 특성
Function Result Cache는 실행 계획에서 집계되지 않습니다.크로스 응답 지원;자세한 내용은 pl/sql function result cache in 11g
뭐 공부 해요?
오늘 프로젝트의 조회 페이지가 너무 느려서 데이터량이 많고 사용자 체험이 좋지 않습니다.그중에 인원 ID에 따라 이름을 조회하는 기능이 0.3~0.4s를 차지하는데 참을 수가 없어요.redis와 같은 캐시가 있는지 검색을 통해resultcache를 찾아서 적용했습니다.효과가 매우 좋아서 특별히 기록합니다.
oracle는 물이 매우 깊고, 우리는 아직 부유생물일 뿐이다.
더 재미있는 내용,rebey에 오신 것을 환영합니다.cn
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.