Устранение неполадок с производительностью базы данных¶
В этом руководстве рассматриваются базы данных или хранилища данных, которые подключены к Glarus BI в качестве источников данных.
Чтобы устранить проблемы с вашей базой данных приложений Glarus BI, ознакомьтесь с этими руководствами по устранению неполадок:
Определение узких мест¶
- Перейдите к журналам сервера вашей базы данных и посмотрите, возможно:
- ваши таблицы увеличиваются в размерах,
- больше людей используют Glarus BI для доступа к вашей базе данных,
- люди чаще обращаются к вашей базе данных, или
- сценарий или внешнее приложение (не Glarus BI) часто обращается к базе данных.
- Если к определённым таблицам часто обращаются, попробуйте оптимизировать схемы таблиц (документация Metabase, англ.).
- Запустите запрос из Glarus BI, затем запустите тот же запрос непосредственно к вашей базе данных.
- Если запросы занимают примерно одно и то же время, ваши данные или использование превышают возможности вашей базы данных. Вы можете предоставить своей базе данных больше ресурсов или рассмотреть возможность обновления вашей инфраструктуры. Документация Metabase (англ.).
- Если запрос в Glarus BI занимает больше времени, чем прямой запрос к вашей базе данных, вам может потребоваться настроить ваше приложение Glarus BI. Ознакомьтесь с некоторыми параметрами масштабирования Glarus BI. Документация Metabase (англ.).
- Если сценарий или стороннее приложение обращается к вашей базе данных одновременно с большим количеством запросов:
- Остановите свой скрипт или приложение и очистите все запросы в очереди.
- Рекомендуется: добавьте таймаут к вашему сценарию, запланируйте запуск сценария или приложения в нерабочее время или реплицируйте свою базу данных (и перенаправьте туда часть запросов).
Сброс соединения с базой данных¶
- Перейдите в Настройки > Управление > Базы данных > (ваша база данных).
- Нажмите Сохранить изменения (без внесения изменений), чтобы сбросить соединения Glarus BI с вашей базой данных.
- В качестве альтернативы: прервите одно или несколько соединений непосредственно из вашей базы данных.
Детали
«Выключите и снова включите», отключив и снова подключив базу данных — простая проверка работоспособности, которая может сэкономить вам много времени.
Как правило, Glarus BI попытается закрыть зависшие соединения с вашей базой данных через 10 минут, а затем ещё раз через 20 минут. Но если ваша база данных не отвечает, вам может потребоваться закрыть соединение с Glarus BI со стороны базы данных.
Очистка запросов в очереди¶
- Остановите процесс (например, сценарий или дашборд со слишком большим количеством карточек, который запускает множество запросов при каждом обновлении.
- Перейдите на сервер базы данных и остановите все запросы (из Glarus BI), которые выполняются.
- Необязательно: увеличьте количество подключений к базе данных.
Детали
Если кто-то или что-то создаёт 100 запросов одновременно, эта очередь запросов займёт все доступные соединения между Glarus BI и вашей базой данных, предотвращая выполнение любых новых запросов. Если другие пользователи продолжат работу с запросами и дашбордами в то время как первые 100 запросов всё ещё выполняются, очередь будет расти быстрее, чем ваша база данных будет успевать её обрабатывать.
Управление ресурсоёмкими запросами¶
Перенесите или отключите синхронизацию и сканирование Glarus BI.
Детали
По умолчанию Glarus BI выполняет регулярные запросы на синхронизацию и сканирование вашей базы данных, чтобы поддерживать таблицы в актуальном состоянии, получать свежие значения для раскрывающихся списков фильтров и делать полезные предложения. Если у вас очень большая база данных, вы можете запускать эти запросы вручную, а не по расписанию.
Запросы, в которых используются столбцы чисел, дат или меток времени¶
- Обновите схему базы данных, чтобы столбцы были правильно набраны.
- Синхронизируйте обновлённые столбцы, чтобы внести изменения в Glarus BI.
Детали
Если в запросе используются данные, хранящиеся как неправильный тип данных. Документация Metabase (англ.) в вашей базе данных (чаще всего это число, дата или метка времени, хранящиеся как строки), Glarus BI сгенерирует запрос, который попросит вашу базу данных преобразовать значения на лету. Правильный ввод столбцов на уровне схемы поможет вашей базе данных избежать этого дополнительного шага для быстрого возврата результатов в Glarus BI.
Связанные проблемы¶
- Моё соединение или запрос истекает по таймауту.
- Я не могу подключиться к базе данных.
- Мой дашборд работает медленно или не загружается.
Проблема не решена?¶
Если вы не можете решить проблему с помощью руководств по устранению неполадок, спросите сообщество Glarus BI.