Дата-центрированная архитектура

В архитектуре, ориентированной на данные, данные централизованы, и к ним часто обращаются другие компоненты, которые изменяют данные. Основная цель этого стиля - добиться целостности данных. Архитектура, ориентированная на данные, состоит из различных компонентов, которые обмениваются данными через общие репозитории данных. Компоненты имеют доступ к общей структуре данных и относительно независимы, поскольку взаимодействуют только через хранилище данных.

Наиболее известными примерами архитектуры, ориентированной на данные, являются архитектура базы данных, в которой общая схема базы данных создается с помощью протокола определения данных - например, набор связанных таблиц с полями и типами данных в СУБД.

Другим примером архитектуры, ориентированной на данные, является веб-архитектура, которая имеет общую схему данных (т. Е. Мета-структуру Интернета) и следует модели данных гипермедиа, а процессы взаимодействуют посредством использования общих сетевых служб данных.

Типы компонентов

Есть два типа компонентов -

  • А central dataструктура или хранилище данных или репозиторий данных, которое отвечает за обеспечение постоянного хранения данных. Он представляет текущее состояние.

  • А data accessor или набор независимых компонентов, которые работают с центральным хранилищем данных, выполняют вычисления и могут возвращать результаты.

Взаимодействие или обмен данными между устройствами доступа к данным осуществляется только через хранилище данных. Данные - единственное средство связи между клиентами. Поток управления разделяет архитектуру на две категории:

  • Стиль архитектуры репозитория
  • Архитектурный стиль доски

Стиль архитектуры репозитория

В стиле архитектуры репозитория хранилище данных является пассивным, а клиенты (программные компоненты или агенты) хранилища данных активны, которые управляют логическим потоком. Участвующие компоненты проверяют хранилище данных на предмет изменений.

  • Клиент отправляет в систему запрос на выполнение действий (например, вставку данных).

  • Вычислительные процессы независимы и запускаются входящими запросами.

  • Если типы транзакций во входном потоке транзакций инициируют выбор процессов для выполнения, то это традиционная архитектура базы данных или репозитория или пассивный репозиторий.

  • Этот подход широко используется в СУБД, библиотечной информационной системе, репозитарии интерфейсов в CORBA, компиляторах и средах CASE (автоматизированная разработка программного обеспечения).

Преимущества

  • Обеспечивает целостность данных, функции резервного копирования и восстановления.

  • Обеспечивает масштабируемость и возможность многократного использования агентов, поскольку они не имеют прямого взаимодействия друг с другом.

  • Снижает накладные расходы на переходные данные между программными компонентами.

Недостатки

  • Он более уязвим к сбоям, и возможна репликация или дублирование данных.

  • Высокая зависимость между структурой данных хранилища данных и его агентами.

  • Изменения в структуре данных сильно влияют на клиентов.

  • Эволюция данных сложна и дорога.

  • Стоимость перемещения данных по сети для распределенных данных.

Архитектурный стиль доски

В архитектурном стиле Blackboard хранилище данных активно, а его клиенты пассивны. Следовательно, логический поток определяется текущим статусом данных в хранилище данных. В нем есть компонент «классная доска», который действует как центральное хранилище данных, а внутреннее представление создается и используется различными вычислительными элементами.

  • На доске хранится ряд компонентов, которые действуют независимо от общей структуры данных.

  • В этом стиле компоненты взаимодействуют только через доску. Хранилище данных предупреждает клиентов о каждом изменении хранилища данных.

  • Текущее состояние решения сохраняется на доске, и обработка запускается по состоянию доски.

  • Система отправляет уведомления, известные как trigger и данные для клиентов, когда в данных происходят изменения.

  • Этот подход используется в некоторых приложениях искусственного интеллекта и сложных приложениях, таких как распознавание речи, распознавание изображений, системы безопасности, системы управления бизнес-ресурсами и т. Д.

  • Если текущее состояние центральной структуры данных является основным триггером выбора процессов для выполнения, репозиторий может быть доской, а этот общий источник данных - активным агентом.

  • Основное отличие от традиционных систем баз данных состоит в том, что вызов вычислительных элементов в архитектуре классной доски запускается текущим состоянием доски, а не внешними входами.

Части модели Blackboard

Модель доски обычно представлена ​​тремя основными частями:

Knowledge Sources (KS)

Источники знаний, также известные как Listeners или же Subscribersявляются отдельными и независимыми единицами. Они решают части проблемы и объединяют частичные результаты. Взаимодействие между источниками знаний происходит исключительно через школьную доску.

Blackboard Data Structure

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

Control

Control управляет задачами и проверяет состояние работы.

Преимущества

  • Обеспечивает масштабируемость, что позволяет легко добавлять или обновлять источник знаний.

  • Обеспечивает параллелизм, который позволяет всем источникам знаний работать параллельно, поскольку они независимы друг от друга.

  • Поддерживает экспериментирование с гипотезами.

  • Поддерживает возможность повторного использования агентов источников знаний.

Недостатки

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

  • Может быть трудно решить, когда прекратить рассуждения, поскольку ожидается только приблизительное решение.

  • Проблемы с синхронизацией нескольких агентов.

  • Основные проблемы при проектировании и тестировании системы.