persist_for (Explore)

이 페이지에서는 persist_for 매개변수를 설명합니다. 이 매개변수는 Explore의 일부입니다.

persist_for는 모델의 일부로도 사용할 수 있으며, persist_for (모델용) 매개변수 문서 페이지에 설명되어 있습니다.

persist_for는 파생 테이블의 일부로도 사용할 수 있으며, persist_for (파생 테이블용) 매개변수 문서 페이지에 설명되어 있습니다.

사용


explore: explore_name {
  persist_for: "1 hour"
}
계층 구조
persist_for
기본값
모델의 persist_for 설정

허용
정수와 시간 범위 (초, 분, 시간)가 포함된 문자열

특수 규칙
explore 수준의 persist_for 설정은 모델 수준의 persist_for 설정을 재정의합니다.

정의

Looker 캐시 정책을 데이터베이스의 ETL (추출, 변환, 로드) 프로세스와 동기화하는 등 더욱 강력한 캐시 관리를 위해서는 datagrouppersist_with를 사용하는 것이 좋습니다. 이는 쿼리 캐싱 문서 페이지에 설명되어 있습니다.

persist_for를 사용하면 특정 Explore에 캐시된 쿼리 결과가 사용되는 시간을 수정할 수 있습니다. Looker의 기본 캐시 길이는 1시간입니다. 캐시 결과는 Looker 인스턴스에서 암호화된 파일에 저장됩니다.

Looker의 캐싱 메커니즘은 다음과 같이 작동합니다. 사용자가 특정 쿼리를 실행하면 이 쿼리의 결과가 캐시됩니다. persist_for에 지정된 간격보다 짧은 시간 내에 정확히 동일한 쿼리 (행 한도 등 모든 것이 동일해야 함)가 다시 실행되면 캐시된 결과가 반환됩니다. 그렇지 않으면 데이터베이스에 대해 새 쿼리가 실행됩니다.

persist_for 간격이 만료되면 캐시에서 데이터가 삭제됩니다. 캐시에 데이터가 보관되는 기간에 대한 자세한 내용은 쿼리 캐싱 문서 페이지를 참조하세요.

Explore와 모델 모두에 persist_for가 설정된 경우 Explore에 설정된 값이 해당 Explore를 기반으로 하는 쿼리에 우선 적용됩니다.

Explore에서 쿼리가 캐시에서 반환되었는지 확인하거나 데이터베이스에서 새 결과를 생성하도록 강제할 수 있습니다. 자세한 내용은 쿼리 캐싱 문서 페이지를 참조하세요.

예시

캐시 길이를 2시간으로 조정합니다.

explore: my_explore {
  persist_for: "2 hours"
}

캐시 길이를 30분으로 조정합니다.

explore: my_explore {
  persist_for: "30 minutes"
}

사용자가 쿼리에 대해 캐시된 결과를 가져오지 않도록 캐싱을 사용 중지합니다.

explore: my_explore {
  persist_for: "0 seconds"
}

고려사항

persist_for0 seconds로 설정되면 사용자의 쿼리가 캐시에서 데이터를 검색하지 않습니다. 하지만 Looker는 내부 프로세스를 위해 디스크 캐시가 필요하므로 persist_for0 seconds로 설정된 경우에도 암호화된 데이터가 항상 캐시에 기록됩니다. 캐시에 기록된 다음에는 데이터에 삭제 플래그가 지정되지만 디스크에 최대 10분 동안 유지될 수 있습니다. 자세한 내용은 쿼리 캐싱 문서 페이지를 참조하세요.

persist_for는 데이터 가져오기와 반드시 일치하지 않습니다.

많은 기업에서 분석 데이터베이스로 데이터를 매일 가져옵니다. 데이터가 지속적으로 업데이트되지 않는 경우 새 쿼리를 실행할 이유가 없다고 판단하여 캐시 길이를 24시간으로 설정하는 경우가 있습니다 (예: persist_for: 24 hours). 하지만 이렇게 해도 사용자가 가장 최근 새로고침보다 오래된 데이터를 가져오는 것을 막을 수는 없습니다.

예를 들어 1월 1일 정오에 쿼리가 실행되고 1월 2일 오전에 새 데이터가 가져온 후 1월 2일 정오에 쿼리가 다시 실행됩니다. 쿼리가 persist_for에 지정된 24시간 내에 실행되었으므로 1월 2일에 새 데이터가 로드되었더라도 1월 1일의 데이터가 반환됩니다.

캐싱을 데이터 가져오기와 일치시키려면 데이터 그룹persist_with를 쿼리 캐싱에 관한 문서에 설명된 대로 사용하세요.

예약된 Look은 결과를 캐시합니다.

예약된 Look이 실행되면 사용자가 실행한 쿼리와 동일한 방식으로 캐시된 결과 집합이 생성됩니다. 특정 Look을 미리 캐시하려면 저장하고 예약하는 것이 좋습니다.