Analysis of the information base volume using the monitoring system of the regional medical information system (1C: Medicine)

Cover Page

Cite item

Full Text

Abstract

Subject of research: the volume of memory occupied by patient data in the regional medical information system.

Purpose of research: improving the efficiency of monitoring and maintenance of the regional medical information system of the Tyumen region.

Research methods: examination of the internal architecture of the regional medical information system of the Tyumen region and existing monitoring methods; development of mechanisms for collecting counters from the operating system, PostgreSQL DBMS, and the 1C platform; conducting an experimental analysis of the data storage structure; statistical processing of performance indicators and evaluation of the efficiency of using indexing mechanisms.

Objects of research: the regional medical information system of the Tyumen region, operating on the 1C platform and PostgreSQL DBMS; metadata objects of the "1C: Medicine" configuration (directories, documents, and information registers) storing patient data; the developed server-side monitoring system.

Research findings: quantitative data on the current volume occupied by patient data and the dynamics of its change were obtained; a specialized monitoring system capable of tracking key metrics of the regional medical information system in real time was developed and implemented; based on the collected data, predictive models for the growth of the database volume were constructed, enabling resource planning (disk space, performance); an automatic alert mechanism for critical trends was created, helping to prevent incidents related to resource shortages; the analysis results were evaluated and can be used to optimize data storage and system architecture.

Full Text

ВВЕДЕНИЕ

Высокая роль внедрения информационных систем (ИС) находит свое применение в медицинской сфере. Актуальность данного вектора развития подтверждается наличием стратегического направления в области цифровой трансформации здравоохранения, утвержденного распоряжением Правительства РФ от 17.04.2024 № 959-р [11]. Автоматизация процессов деятельности организаций здравоохранения позволяет значительно повысить эффективность их работы, что напрямую влияет на качество медицинского обслуживания пациентов.

Развитие информационных технологий в медицинской сфере является одной из приоритетных задач, установленных Правительством Тюменской области. В 2015 году в рамках федерального проекта было принято решение о разработке и внедрении продукта собственного производства на базе платформы 1С. Полный переход с SAP на 1С состоялся в 2018 году [1].

Достижение необходимого уровня быстродействия и отказоустойчивости системы невозможно без применения высокопроизводительного оборудования и организации непрерывного мониторинга его функционирования. В условиях обработки значительных объёмов данных, характерных для современных медицинских информационных систем, критическое значение приобретает своевременное выявление узких мест и оптимизация серверных процессов.

Следствием плановых обновлений системы становится возникновение ряда проблем со стороны пользовательского интерфейса: увеличение времени открытия экранных форм, формирования отчетных документов и выполнения учетных операций. Данные факторы приводят к росту временных затрат на обслуживание пациентов и, как следствие, к увеличению очередей в поликлиниках, что негативно отражается на доступности и качестве медицинской помощи.

Обоснованность управленческих решений в области разработки и администрирования информационных систем базируется на результатах анализа сводных данных, формируемых в процессе автоматического сбора показателей функционирования систем. Своевременный контроль и устранение выявленных факторов нестабильности позволили бы предотвратить значительную долю возникающих проблем. В связи с этим было принято решение о разработке и внедрении собственной системы мониторинга, ориентированной на решение специфических задач наблюдения за медицинскими информационными системами (МИС). Среда разработки – платформа «1С:Предприятие 8.3».

Система мониторинга серверной части региональной медицинской информационной системы Тюменской области (РМИС ТО) предназначена для непрерывного сбора, хранения и анализа данных о состоянии серверного оборудования и выполняемых на нём процессов как в круглосуточном режиме, так и в периоды пиковых нагрузок. Ключевая идея разработки заключается в создании специализированного инструментария, ориентированного на решение уникальных задач мониторинга, возникающих в процессе сопровождения РМИС ТО.

Целью создания системы является повышение эффективности мониторинга и сопровождения региональной медицинской информационной системы Тюменской области.

Для достижения поставленной цели были определены следующие задачи:

– изучение внутренней архитектуры РМИС ТО и анализ существующих методов сбора аналитики;

– разработка механизмов сбора и хранения счетчиков операционной системы;

– разработка механизмов сбора и хранения счетчиков СУБД PostgreSQL;

– разработка механизмов сбора и хранения счетчиков платформы 1С (серверная часть).

В рамках реализации данной работы разрабатываемая система должна обеспечивать следующий функционал, необходимый для поддержки бесперебойной работы РМИС:

– получение актуальной информации о состоянии операционной системы, базы данных, платформы 1С;

– сбор статистики по информационным базам и кластеру PostgreSQL;

– получение и анализ структуры хранения информационной базы в PostgreSQL с последующим сохранением результатов в базе системы мониторинга;

– мониторинг счетчиков платформы 1С в тестовой и продуктивной средах;

– получение текущей информации о проблемных (неоптимизированных в рамках времени выполнения) участках программного кода;

– отправка оповещений по электронной почте с возможностью гибкой настройки получателей для каждого сервера или информационной базы;

– выбор информационных баз, включаемых в плановый сбор статистики и рассылку уведомлений;

– планирование периодичности проведения анализа/тестирования процессов (еженедельно, ежемесячно и т. д.);

– установка приоритетов анализируемых процессов в системе мониторинга;

– формирование аналитических сводок и отчетов о состоянии системы;

– оценка производительности и масштабируемости информационной системы;

– анализ масштабируемости при варьировании параметров (объем базы данных, количество одновременно работающих пользователей, уровень нагрузки и др.);

– получение оценки сравнения показателей производительности при изменении функциональности и конфигурации;

– выявление конфликтов блокировок (при многопользовательской работе системы);

– хранение собираемой статистики.

РЕЗУЛЬТАТЫ И ОБСУЖДЕНИЕ

Система мониторинга РМИС ТО представляет собой программный комплекс, предназначенный для контроля состояния серверной части информационной системы, включая сбор аппаратной статистики, мониторинг базы данных и анализ работы платформы 1С [7]. В качестве источников данных выступают три среды: тестовая, продуктивная, а также корпоративный инструментальный пакет [6]. В тестовой и продуктивной средах сбор информации осуществляется напрямую из операционной системы, СУБД и платформы 1С [8]. Корпоративный инструментальный пакет, в свою очередь, обеспечивает выгрузку и передачу данных, полученных в ходе тестирований.

Система мониторинга хранит и обрабатывает все получаемые показатели и предоставляет доступ к ним для внешних систем обработки данных [3; 9; 14]. На рисунке 1 изображена наглядная схема основных компонентов, взаимодействующих с системой мониторинга.

 

Рисунок 1. Общая схема структуры системы мониторинга РМИС

 

Данная система является модульной, причем работа модулей может не зависеть друг от друга [5]. На рисунке 2 отображена схема межмодульного взаимодействия, а также показаны источники данных для каждого модуля.

 

Рисунок 2. Схема межмодульного взаимодействия системы

 

Основная идея данного модуля заключается в получении количественных показателей состояния таблиц, полей и индексов информационной базы [15, с. 312–362]:

– общая статистика;

– объем, занимаемый таблицами;

– статистика по обращениям к таблицам;

– статистика по операциям ввода/вывода для таблиц;

– статистика по обращениям к индексам;

– статистика по операциям ввода/вывода для индексов.

Поскольку в данном модуле работа связана напрямую с базами данных, то для обеспечения безопасной разработки, на случай каких-либо ошибок и непредвиденных обстоятельств, были сымитированы структура и порядок развертывания систем в реальных условиях [4]. Для этого на локальном компьютере была запущена виртуальная машина с операционной системой Linux CentOS 7, а также установлены такие компоненты, как система управления базами данных PostgreSQL и серверная платформа 1С. Были проведены настройки локальной сети для связи серверной и клиентской частей. Принцип работы данного модуля построен на получении статистической информации из системных таблиц, которая отражает текущее состояние информационной базы 1С в рамках статистики выполнения запросов и обращений к памяти [2].

Процесс получения статистических данных схематично изображен на рисунке 3. В конфигурации системы мониторинга формируется SQL-запрос, который напрямую передается в СУБД, и в зависимости от требуемых данных PostgreSQL возвращает значения.

 

Рисунок 3. Схема работы модуля для получения статистики ИБ

 

Модуль позволяет работать с получаемыми данными: сортировать по столбцам, находить необходимое значение и т. п. В работе модуля предусмотрена возможность сохранять значения в базе как вручную, так и автоматически по расписанию. В свойствах каждой конфигурации с помощью интерфейса пользователь может настроить подписку на сохранение и оповещения, отсылаемые в виде файла формата .xls на электронную почту.

Как уже было указано ранее, все запросы хранятся в общем модуле конфигурации «тмб_ТекстыЗапросов». Функции модуля не выполняют работу с информационной базой, они лишь возвращают текст запроса в строковой переменной. Основная задача данного модуля заключается в централизованном хранении всех запросов в одном месте [13, с. 189–207].

Для работы данного модуля было реализовано шесть функций:

  1. Функция «РазмерыТаблиц» предназначена для получения данных о занимаемом объеме памяти таблицами в БД. На первом шаге получается список существующих имен таблиц из системной таблицы «information_schema.tables». Затем с помощью встроенных функций СУБД PostgreSQL (pg_table_size(), pg_indexes_size, pg_total_relation_size()) вычисляются размеры таблиц и индексов [15, с. 335–347]. По умолчанию размеры отображаются в байтах, но поскольку в системе хранятся большие объемы данных, было принято решение перевести байты в мегабайты [10].
  2. Функция «СтатистикаОбращенийКТаблицам» предназначена для получения статистики по обращениям к таблицам. Информация получается из системной таблицы «pg_stat_all_tables» [10; 15, с. 315–324].
  3. Функция «СтатистикаОперацийПоТаблицам()» предназначена для получения статистики по операциям ввода/вывода для таблиц. Информация получается из системной таблицы «pg_statio_all_tables» [10; 15, с. 328–334].
  4. Функция «СтатистикаОбращенийКИндексам()» предназначена для получения статистики по обращениям к индексам. Информация получается из системной таблицы «pg_stat_all_indexes» [10; 15, с. 324–328].
  5. Функция «СтатистикаОперацийПоИндексам()» предназначена для получения статистики по операциям ввода/вывода для индексов. Информация получается из системной таблицы «pg_statio_all_indexes» [10; 15, с. 331–335].
  6. Функция «ПолучитьОбщуюСтатистикуПоКонфигурации()» предназначена для получения общей (сводной) статистики по информационной базе в PostgreSQL. Информация получается из двух таблиц «pg_stat_database» и «pg_stat_database_conflicts» [15, с. 335–339]. Первая таблица выводит общую системную информацию, а вторая отвечает за вывод статистики по отменам запросов, произошедшим вследствие конфликтов [10].

Для проведения эксперимента был выбран модуль получения статистики информационных баз в PostgreSQL, поскольку задача анализа объема информационных баз была наиболее актуальна для источника финансирования (предприятия).

В ходе эксперимента на протяжении одного месяца ежедневно выполнялись регламентные задания по сбору статистических показателей таблиц [16]. В качестве исследуемых таблиц были установлены три объекта: «Справочник.Картотека» (_reference95), «Документ.СменаФИО» (_document338), РегистрСведений.ДанныеПациентов (_inforg7304).

Решение о выборе данных таблиц для эксперимента было принято на основании проведения импорта данных пациентов в тестовый контур. Именно эти 3 объекта являются одними из важнейших при организации хранения данных пациентов. Главная задача этого эксперимента – проверить работу модуля на получении статистических показателей таблиц в PostgreSQL при импорте новых данных. За указанный период было загружено около 500 000 данных о пациентах. Загрузка данных была разбита на 29 частей, примерно по 17 000 новых записей [12, с. 178–195].

Первой областью для анализа являлся объем занимаемой памяти таблицами в базе данных. Были получены выборки данных для «Справочник.Картотека» (рисунок 4), «Документ.СменаФИО» (рисунок 5), «РегистрСведений.ДанныеПациентов» (рисунок 6).

 

Рисунок 4. Размеры таблицы «Справочник.Картотека»

 

Рисунок 5. Размеры таблицы «Документ.СменаФИО»

 

Рисунок 6. Размеры таблицы «РегистрСведений.ДанныеПациентов»

 

На основании полученных данных был рассчитан примерный объем памяти, занимаемый 1 пациентом (без учета медицинских данных), в рамках данного эксперимента. Расчеты приведены в таблице 1.

 

Таблица 1. Объем памяти, занимаемый одним пациентом (без учета медицинских данных)

Наименование таблицы

Объем памяти, занимаемый одним пациентом (Кб)

1

«Справочник.Картотека»

1,072

2,4917

2

«Документ.СменаФИО»

0,674

3

«РегистрСведений.ДанныеПациентов»

0,7457

 

При импорте данных была оценена статистика по обращениям к индексам. При создании объектов конфигурации 1С индексы автоматически создаются неявным образом, то есть с помощью набора полей, однозначно определяющих данные.

У каждой таблицы имеется свой ряд индексов [13, с. 89–112], например для объекта «Справочник.Картотека» перечень индексов приведен в таблице 2, для «Документ.СменаФИО» – в таблице 3.

 

Таблица 2. Перечень индексов для объекта «Справочник.Картотека»

Имя индекса хранения 1С

Состав индекса

Имя поля 1С

Имя поля хранения SQL

1

_Reference95_Code

Код

_Code

2

_Reference95_Descr

Наименование

_Description

3

_Reference95_ByField1536

СтраховойНомерПФР

_Fld1534

4

_Reference95_ByField17484

ИдентификаторПациентаВРМИС

_Fld17483

5

_Reference95_ByField17826

сшп_Идентификатор

_Fld17493

 

Таблица 3. Перечень индексов для объекта «Документы.СменаФИО»

Имя индекса хранения 1С

Состав индекса

Имя поля 1С

Имя поля хранения SQL

1

_Document338_ByDocNumPrefix

Префикс

_NumberPrefix

2

_Document338_ByDocNum

Номер

_Number

3

_Document338_ByDocDate

Дата

_Date_Time

4

_Document338_ByField5467

Пациент

_Fld5462RRef

5

_Document338_ByField5466

ДокументОснование

_Fld5457_RTRef

6

_Document338_ByField17826

сшп_Идентификатор

_Fld17493

 

Поскольку объект «РегистрСведений.ДанныеПациентов» является регистром сведений, то для него автоматически создаются таблицы: «СрезПоследних» и «СрезПервых», в зависимости от установленных параметров [13, с. 245–272]. В нашем случае учет статистики будет суммироваться по двум таблицам «_InfoRg7304» и «_InfoRgSL12162». Перечень индексов для данных объектов приведен в таблице 4.

 

Таблица 4. Перечень индексов для объекта «РегистрСведений.ДанныеПациентов»

Имя индекса хранения 1С

Состав индекса

Имя поля 1С

Имя поля хранения SQL

1

_InfoRg7304_ByPeriod

Период

_Period

2

_InfoRg7304_ByRecorder

Регистратор

_RecorderRRef

3

_InfoRg7304_ByDims

Пациент (измерение)

_Fld7305RRef

4

_InfoRg7304_ByResource7313

Фамилия (ресурс)

_Fld7311

4

_InfoRg7304_ByResource7312

Имя (ресурс)

_Fld7307

5

_InfoRg7304_ByResource12161

ДатаРождения (ресурс)

_Fld7306

РегистрСведений.ДанныеПациентов.СрезПоследних

1

_InfoRgS12162_ByDims

Пациент (измерение)

_Fld7305RRef

2

_InfoRgS12162_ByResource7313

Фамилия (ресурс)

_Fld7311

3

_InfoRgS12162_ByResource7312

Имя (ресурс)

_Fld7307

4

_InfoRgS12162_ByResource12161

ДатаРождения (ресурс)

_Fld7306

 

После выполнения импорта была получена следующая статистика: для «Справочник.Картотека» результаты представлены на рисунке 7, «Документ.СменаФИО» – на рисунке 8, «РегистрСведений.ДанныеПациентов» – на рисунке 9.

 

Рисунок 7. Статистика по обращениям к индексам «Справочник.Картотека»

 

Рисунок 8. Статистика по обращениям к индексам «Документ.СменаФИО»

 

Рисунок 9. Статистика по обращениям к индексам «РегистрСведений.ДанныеПациентов»

 

ЗАКЛЮЧЕНИЕ И ВЫВОДЫ

Анализ полученных результатов позволяет заключить, что число выполненных сканирований и количество возвращённых элементов являются индикаторами операций чтения таблиц. Отсутствие обращений к таблицам «Справочник.Картотека» и «Документ.СменаФИО» в рамках эксперимента обусловило нулевые значения соответствующих показателей.

Для регистра сведений «ДанныеПациентов» показатели количества запущенных сканирований и числа возвращённых элементов имеют ненулевые значения. Это обусловлено тем, что при внесении новых записей в регистр выполняется автоматическая перестройка вспомогательной таблицы «СрезПоследних», которая предполагает выполнение операций чтения из основной таблицы.

Среди прочих ресурсов наибольшую востребованность демонстрирует индекс по реквизиту «Имя», что объясняется возможностью множественного совпадения значений данного реквизита у различных записей регистра. Следует также отметить, что для этого индекса количество сканирований превышает количество возвращённых элементов, а число считанных дисковых блоков при обращении к нему является максимальным среди всех рассматриваемых индексов.

Использование индекса по дате рождения в ходе сканирований носит частный характер и связано с условиями эксперимента: при импорте тестовых данных в качестве даты рождения пациента устанавливалась текущая дата на момент создания записи.

Число попаданий в буфер у всех индексов приблизительно одинаково, поскольку данный показатель не зависит ни от настроек СУБД, ни от параметров платформы 1С. Следует учитывать, что наличие индексов не всегда оказывает положительное влияние на производительность базы данных. Индексирование сопряжено с дополнительным расходом дискового пространства и замедлением операций вставки, обновления и удаления записей. В связи с этим выбор оптимального набора индексов требует проведения дополнительного анализа и экспертной оценки.

Применение разработанных модулей позволяет прогнозировать изменения в информационных базах и на основе полученных данных осуществлять обоснованное планирование модернизации аппаратного обеспечения, а также оптимизацию существующих программных решений.

×

About the authors

Mikhail V. Grigoriev

Tyumen State University

Email: m.v.grigorev@utmn.ru

Candidate of Engineering Science, Associate Professor

Russian Federation, Tyumen

Inna I. Grigorieva

Tyumen State University

Email: i.i.grigoreva@utmn.ru

Candidate of Engineering Science, Associate Professor

Russian Federation, Tyumen

Maxim M. Popovich

1C-Medicine-Region LLC

Author for correspondence.
Email: popm@1cmr.ru

Team Leader

Russian Federation, Tyumen

References

  1. С-Медицина-Регион. – URL: https://1cmr.ru/ (дата обращения: 18.05.2026).
  2. Анализ производительности и оптимизация работающей многопользовательской системы // 1С:ИТС: информационная система. – URL: https://its.1c.ru/db/metod8dev/content/4052/hdoc (дата обращения: 18.05.2026).
  3. ГОСТ Р 55062-2012. Информационные технологии. Системы промышленной автоматизации и их интеграция. Интероперабельность. Основные положения : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 13 ноября 2012 г. № 751-ст : введен впервые : дата введения 2013-09-01. – Москва : Стандартинформ, 2018. – 46 с. – URL: https://docs.cntd.ru/document/ 1200102958 (дата обращения: 18.05.2026).
  4. ГОСТ Р 56921-2016. Системная и программная инженерия. Тестирование программного обеспечения. Часть 2. Процессы тестирования : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 18 мая 2016 г. № 332-ст : введен впервые : дата введения 2017-06-01. – Москва : Стандартинформ, 2016. – 66 с. – URL: https://docs.cntd.ru/document/1200134997 (дата обращения: 18.05.2026).
  5. ГОСТ Р 57100-2016. Системная и программная инженерия. Описание архитектуры : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 22 сентября 2016 г. № 1190-ст : введен впервые : дата введения 2017-09-01. – Москва : Стандартинформ, 2019. – 36 с. – URL: https://docs.cntd.ru/document/1200139542 (дата обращения: 18.05.2026).
  6. ГОСТ Р ИСО/МЭК 12207-2010. Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 30 ноября 2010 г. № 631-ст : взамен ГОСТ Р ИСО/МЭК 12207-99 : дата введения 2012-03-01. – Москва : Стандартинформ, 2011. – 105 с. – URL: https://docs.cntd.ru/document/1200082859 (дата обращения: 18.05.2026).
  7. ГОСТ Р ИСО/МЭК 20000-1-2021. Информационные технологии. Управление услугами. Часть 1. Требования к системе менеджмента сервисов : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 7 декабря 2021 г. № 1718-ст : взамен ГОСТ Р ИСО/МЭК 20000-1-2013 : дата введения 2022-04-30. – Москва : Российский институт стандартизации, 2022. – 32 с. – URL: https://docs.cntd.ru/document/1200182033 (дата обращения: 18.05.2026).
  8. ГОСТ Р ИСО/МЭК 25023-2021. Системная и программная инженерия. Требования и оценка качества систем и программных продуктов. Измерения качества системы и программной продукции : национальный стандарт Российской Федерации : утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 19 ноября 2021 г. № 1524-ст : введен впервые : дата введения 2022-01-01. – Москва : Российский институт стандартизации, 2021. – 47 с. – URL: https://docs.cntd.ru/document/1200181822 (дата обращения: 18.05.2026).
  9. Методическое пособие по эксплуатации крупных информационных систем на платформе «1С:Предприятие 8» / А. Асатрян, А. Голиков, А. Морозов [и др.]. – 2-е издание. – Москва : 1С-Паблишинг, 2017. – 331 с.
  10. Мониторинг работы СУБД. 28.2. Сборщик статистики // Postgres Professional. – URL: https://postgrespro.ru/docs/postgresql/9.6/monitoring-stats (дата обращения: 18.05.2026).
  11. Об утверждении стратегического направления в области цифровой трансформации здравоохранения : Распоряжение Правительства РФ от 17.04.2024 № 959-р // Гарант. – URL: https://www.garant.ru/products/ipo/prime/doc/408813257 (дата обращения: 18.05.2026).
  12. Орлов, А. И. Прикладная статистика / А. И. Орлов. – Москва : Экзамен, 2024. – 946 с.
  13. Радченко, М. Г. 1С:Предприятие 8.3 : практическое пособие разработчика / М. Г. Радченко, Е. Ю. Хрусталева. – Москва : 1С-Паблишинг, 2023. – 983 с.
  14. Размещение данных 1С:Предприятия 8 // 1С:ИТС : информационная система. – URL: https://its.1c.ru/db/metod8dev#content:1591:hdoc (дата обращения: 18.05.2026).
  15. Рогов, Е. В. PostgreSQL 15 изнутри / Е. В. Рогов. – Москва : ДМК Пресс, 2023. – 662 с.
  16. Руководство разработчика. Глава 19. Механизм заданий // 1С:ИТС : информационная система. – URL: https://its.1c.ru/db/v8318doc/bookmark/dev/TI000000792 (дата обращения: 18.05.2026).

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Figure 1. General diagram of the structure of the RMIS monitoring system

Download (320KB)
3. Figure 2. Diagram of intermodule interaction of the system

Download (272KB)
4. Figure 3. Scheme of the module operation for obtaining information security statistics

Download (149KB)
5. Figure 4. Dimensions of the "Directory.Card Index" table

Download (91KB)
6. Figure 5. Dimensions of the “Document.Change of Full Name” table

Download (85KB)
7. Figure 6. Dimensions of the table "InformationRegister.PatientData"

Download (85KB)
8. Figure 7. Statistics on access to the "Directory.Card File" indexes

Download (145KB)
9. Figure 8. Statistics on accesses to the “Document.ChangeFullName” indexes

Download (166KB)
10. Figure 9. Statistics on accesses to the “InformationRegister.PatientData” indexes

Download (174KB)

Copyright (c) 2026 Yugra State University

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.