2009-10-14

Иерархия и эгалитарность

В архитектуре систем вопрос о двух подходах, иерархическом и сетевом (с равноправными узлами), встает давно и в самых разных аспектах:
1. В задаче классификации (taxonomy) - Классификация с единым корневым элементом против классификации на основе равноправного списка.
2. В задаче моделирования данных (data modeling) - Иерархическая вложенность, подчиненность или порождение объектов против сетевой модели данных с произвольными связями.
3. В задаче взаимодействия подсистем (distributed systems) - Архитектура клиент-сервер, многоранговая иерархия против одноранговых (пиринговых или peer-to-peer) сетей.
4. В задаче управления (control theory) - Централизованное управление (с единым целеполаганем или же с единым центром управления высокого уровня и каскадной иерархией разукрупнения задач управления) против независимых систем управления отдельными технологическими процессами без единого центра.
5. В задаче организационного менеджмента (project management) - Принцип единоначалия и иерархии против соревновательного принципа и равноправной конкуренции.

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

Принцип иерархии распространен в природе везде, где речь идет о внутренней организации "гомеостата" (автономной самоорганизующейся системы, которая поддерживает свою внутреннюю структуру, функции и параметры в заданных диапазонах в течении жизни системы). Примеры приводит нам К. Леонтьев, отмечая, что в мире все системы построены иерархически, и в организме человека, растений, животных и социальные институты и планеты, звездные системы и т.д. Однако в середине IXX века он не был знаком с работами У. Эшби и Н. Вишера по кибернетике, вводящими понятие гомеостата. С другой стороны, принцип конкуренции между равноправными системами в природе так же имеет место: конкуренция за зону обитания, за ресурсы, за преобладание определенных религиозных, социальных или политических идеологий, экономическая конкуренция. Общая картина представляется мне такой, что одноранговая конкуренция не противоречит иерархии, а является для нее дуальной парой. Т.е. организация объектов или явлений в иерархию приводит к появлению конкуренции, а появление конкуренции - к организации иерархии. Оба этих дуальных понятия способствуют развитию структуры, в противовес хаосу или энтропии.

Таким образом, и модель мира, которую мы строим с помощью вычислительной техники, должна отображать оба типа структур, как иерархическую, так и сетевую (с равноправными связями). Другое дело, что мы вынуждены использовать декомпозицию для отображения обоих этих структур в реляционных СУБД, т.к. реляционная модель находится на один уровень абстракции выше, чем модели сетевые и иерархические (такие СУБД тоже существуют). Однако, декомпозиция приводит всегда к потере части семантики модели. Даже используемая нами для проектирования баз данных методология ER (сущность-связь) напрямую связана с реляционным подходом и не позволяет без декомпозиции описать системы. Т.е. на уровне ER-диаграммы все сущности равноправны, хотя часть сущностей составляют "внутренность" описываемой системы, другая часть - "внутренность" параллельно существующей системы, а третья часть описывает надсистемные атрибуты или же параметры системы более крупной, включающей в себя множество других. Поэтому нам часто приходится делать префиксы к таблицам, разукрашивать ER-диаграммы разными цветами, чтобы сгруппировать таблицы, классифицировать связи. Этому способствует и введение мета-данных, которые описывают недостающие атрибуты и "потерянную семантику". Например: сила связи, тип связи, группа связей, направление связи, и все, что связано с применением нечеткой логики. Все это не ложится в реляционную модель и требует от архитектора системы специальных уловок. Но об этом будет дальше.

Комментариев нет:

Отправить комментарий