1. Інформаційні моделі

Інформаційні моделі відображають структуру даних, їх зв’язки та логіку обробки у системі.



Знаходиться в середині Процедур

1.1. Основні інформаційні сутності

У системі «Прозорро.Продажі» визначено ключові сутності:

Процедура (Procedure)

Ставка (Bid)

Кваліфікація (Award)

Контрактинг (Contract)

Скасування (Cancellation)

2. Опис інтерфейсів

Інтерфейси системи забезпечують взаємодію користувачів, зовнішніх сервісів та інших інформаційних систем.

2.1. Інтерфейси користувачів

Веб-платформа (UI)

Мобільний інтерфейс

2.2. API-інтерфейси

REST API використовується для інтеграції із зовнішніми системами.

API для взаємодії з державними реєстрами

API для фінансових операцій

API для звітності та аналітики

3. Структура бази даних

База даних системи реалізована на основі NoSQL-рішень, таких як MongoDB (для зберігання основних об'єктів системи) та Elasticsearch (для повнотекстового пошуку та аналітики). Обрана архітектура дозволяє ефективно працювати з великими обсягами даних та забезпечує масштабованість, гнучкість і високу швидкодію.

3.1. Основні колекції БД

КолекціяОпис
procedure (MongoDB)Зберігає об’єкти процедур, включаючи метадані, статуси, етапи проведення, тощо.
registry (MongoDB)Містить об’єкти реєстрів оренди, приватизації тощо
jobber (MongoDB)Об’єкти, пов’язані з фоновими задачами, чергами на обробку, планувальниками.
notifications (MongoDB)Події та повідомлення, які надсилаються користувачам або службам.
auction (MongoDB)Дані, що стосуються аукціонів: ставки, учасники, результати, лоти.
swiftStorageСлужба зберігання документів – файлові об’єкти, пов’язані з процедурами.
ElasticsearchІндекси для реалізації повнотекстового пошуку по процедурах, учасниках, документах.

3.2. Зв’язки між колекціями

У MongoDB зв’язки реалізовані через посилання (reference) між об’єктами шляхом зберігання ідентифікаторів:

Зв’язки типово реалізуються через ідентифікатори (_id) без застосування вкладених JOIN-запитів, що забезпечує високу продуктивність.

3.3. Оптимізація бази даних