Внимание
Раздел содержит сведения, которые понадобятся вам только в случае использования системы Cerebro, установленной на ваш локальный сервер (см. раздел «Локальная установка»).
Все клиенты Cerebro подключаются к централизованной базе данных. В этой базе хранятся задачи, связи между ними, информация о пользователях (включая хеши паролей) и хеши приложенных файлов (сами файлы хранятся децентрализовано и обслуживаются сервисом Cargador).
Централизованная база данных системы Cerebro называется Memoria. Она работает на основе СУБД PostgreSQL. Memoria состоит из набора связанных таблиц, доступ к которым реализован через хранящиеся на сервере функции (stored procedures). Также в состав Memoria входит вспомогательный плагин к PostgreSQL для расчёта диаграммы Ганта, вычисления прав доступа и задач лицензирования - malosol.dll/so.
Пользователи Cerebro не имеют прямого доступа к таблицам с данными. Вместо этого клиент вызывает ту или иную хранимую на сервере процедуру. Процедура проверяет права пользователя на доступ к данным и выдаёт информацию в соответствии с этими правами. Таким образом ограничивается возможность несанкционированного доступа к данным с помощью низкоуровневых утилит доступа к СУБД.
Также хранимые процедуры реализуют серверную часть «бизнес-логики», модифицируют таблицы в ответ на запросы клиентов, формируют отчёты по статистике и т.д.