Как настроить СУБД ЛИНТЕР для достижения наилучшей производительности в условиях ограниченного объема оперативной памяти? Может быть существует стандартный набор настроек для таких случаев?

СУБД ЛИНТЕР ориентирована на работу в условиях ограниченных ресурсов (оперативной памяти).

В СУБД ЛИНТЕР реализовано два режима выделения ресурсов:

  1. режим автоконфигурирования (задается параметром SET AUTOCONFIG ON при конфигурировании БД утилитой gendb). В этом режиме ядру СУБД и процессам сортировки выделяется объем памяти, пропорциональный объему доступной оперативной памяти компьютера. Память под системные очереди таблиц, столбцов, файлов, и пользователей выделяется автоматически в зависимости от текущих размеров соответствующих системных таблиц;

  2. режим ручного выделения ресурсов (задается параметром SET AUTOCONFIG OFF при конфигурировании БД утилитой gendb). В этом случае, в зависимости от решаемой задачи, достигается оптимальное распределение ресурсов с помощью ключей запуска СУБД ЛИНТЕР.

Задать режимы конфигурирования, а также размеры очередей можно, например, с помощью утилиты gendb (подробную информацию см. в документе «СУБД ЛИНТЕР. Создание и конфигурирование базы данных», пункт «Конфигурирование БД».

Автоконфигурирование включается подачей команды SET AUTOCONFIG ON в утилите gendb или в настройках БД из графических средств управления.

Соответственно, отключение автоконфигурирования производится командой SET AUTOCONFIG OFF в утилите gendb или в настройках БД из графических средств управления.

В режиме ручного конфигурирования объем оперативной памяти, выделяемой ядру СУБД, можно задать в командной строке запуска ядра СУБД следующими ключами:

  • /POOL – задает объем памяти для ядра СУБД (в страницах по 4 Кбайт);

  • /SPOOL – задает объем памяти для процессов сортировки (в страницах по 4 Кбайт);

  • /PPOOL – задает объем памяти для подсистемы полнотекстового поиска, в случае если клиентское приложение использует полнотекстовый поиск, настоятельно рекомендуется выделять память вручную, так как работа подсистемы полнотекстового поиска с параметрами по умолчанию может быть медленной;

  • /INMEMPOOL – задает объем памяти для хранения страниц таблиц «в памяти» (предварительно СУБД должна быть настроена для работы с таблицами «в памяти» с помощью утилиты gendb).

Более подробное описание ключей запуска ядра СУБД см. в документах «СУБД ЛИНТЕР. Запуск и останов СУБД ЛИНТЕР в среде ОС Windows», подраздел «Ключи управления оперативной памятью» и «СУБД ЛИНТЕР. Запуск и останов СУБД ЛИНТЕР в среде ОС Linux, Unix», подраздел «Ключи управления оперативной памятью».