Кэширование результатов запросов¶
Если результаты запроса меняются нечасто, вы можете сохранить результаты, чтобы при следующем открытии запроса Glarus BI мог вернуть кэшированные результаты вместо обращения к базе данных.
Если ваши данные обновляются только раз в день, нет смысла запрашивать базу данных чаще, так как данные не будут изменены. Возврат кэшированных результатов может быть существенно быстрее, так как базе данных не нужно заново пересчитывать результат.
Вы можете настроить политики сброса кэша для баз данных.
Как работает кэширование в Glarus BI¶
Когда вы открываете запрос в первый раз, Glarus BI проверяет, есть ли сохранённые результаты. Если результатов нет, Glarus BI выполнит запрос к базе данных, вернёт результаты и сохранит (кэширует) их. Эти результаты будут считаться действительными согласно выбранной политике сброса кэша.
Если вы выполните запрос ещё раз (раньше, чем обновится кэш), Glarus BI вернёт сохранённые результаты.
Если вы выполните запрос, и Glarus BI определит, что сохранённые результаты «старше», чем допускает политика, то удалит сохранённые результаты, снова выполнит запрос к базе данных, вернёт результаты и сохранит их для будущих обращений. Этот кэш будет действителен согласно выбранной политике.
Политики сброса кэша¶
Эти политики определяют, как долго кэшированные результаты остаются действительными.
Адаптивная политика¶
Использует среднее время выполнения запроса, чтобы определить, как долго хранить результаты в кэше.
-
Минимальная длительность запроса: Glarus BI будет кэшировать этот запрос, если его среднее время выполнения больше указанного количества секунд.
-
Множитель: чтобы определить, как долго хранить кэш, берётся среднее время выполнения запроса и умножается на указанное значение. Результат — количество секунд, в течение которых кэш будет считаться действительным. Например, если запрос в среднем выполняется 10 секунд, а множитель равен 100, Glarus BI сохранит кэш на 10 × 100 секунд: 1 000 секунд (~16 минут).
Glarus BI пересчитывает среднее время выполнения запроса каждый раз, когда выполняет запрос к базе данных для обновления кэша. Так, если первый запуск занял 5 минут, среднее будет 5 минут. Если следующий запуск занял 7 минут, среднее обновится до 6 минут (среднее арифметическое 5 и 7).
Администратору доступна статистика выполнения запросов и кэширования в коллекции "Аналитика использования".
Не кэшировать результаты¶
Если для базы данных выбрать вариант "Не кэшировать результаты", Glarus BI не будет кэшировать результаты и будет всегда выполнять запрос к базе данных заново.
Логи автоматического кэширования¶
Чтобы посмотреть запросы, которые Glarus BI выполнил для автоматического обновления кэша, откройте лог запросов и отфильтруйте поле Query source по значению cache-refresh.
Политика кэширования по умолчанию¶
Чтобы настроить политику кэширования по умолчанию для экземпляра: нажмите Cmd/Ctrl + K, чтобы открыть палитру команд, затем найдите Производительность. Или перейдите через значок шестерёнки в Управление > Производительность > Кэширование базы данных.
Затем выберите политику сброса кэша.
Где хранится кэш¶
Если вы запускаете Glarus BI в self-hosted режиме, кэшированные результаты запросов будут сохранены в базе данных приложения.
Если вы используете облачную версию Glarus BI, кэшированные результаты запросов будут сохраняться на серверах Glarus BI (так как облачный сервис управляет вашей базой данных приложения).