ТРАНСПОРТИРОВАНИЕ ИНФОРМАЦИИ
Основным физическим способом реализации операции транспортировки является использование локальных сетей и сетей передачи данных. При разработке и использовании сетей для обеспечения совместимости используется ряд стандартов, объединенных в семиуровневую модель открытых систем, принятую во всем мире и определяющую правила взаимодействия компонентов сети на данном уровне (протокол уровня) и правила взаимодействия компонентов различных уровней (межуровневый интерфейс) [4, 36]. Международные стандарты в области сетевого информационного обмена нашли отражение в эталонной семиуровневой модели, известной как модель OSI (Open System Intercongtction — связь открытых систем) (рис. 4.3). Данная модель разработана международной организацией по стандартизации (International Standards Organization — ISO). Большинство производителей сетевых программно-аппаратных средств стремятся придерживаться модели OSI. Но в целом добиться полной совместимости пока не удается.
Физический уровень реализует физическое управление и относится к физической цепи, например телефонной, по которой передается информация. На этом уровне модель OSI определяет физические, электрические, функциональные и процедурные характеристики цепей связи, а также требования к сетевым адаптерам и модемам.
Канальный уровень. На этом уровне осуществляется управление звеном сети (каналом) и реализуется пересылка блоков (совокупности битов) информации по физическому звену. Осуществляет такие процедуры управления, как определение начала и конца блока, обнаружение ошибок передачи, адресация сообщений и др. Канальный уровень определяет правила совместного использования сетевых аппаратных средств компьютерами сети.
Сетевой уровень относится к виртуальной (воображаемой) цепи, которая не обязана существовать физически. С помощью интерфейса, обеспечиваемого этим уровнем, удается «спрятать» сложности управления передачей на физическом уровне. Программные средства данного уровня обеспечивают определение маршрута передачи пакетов в сети. Маршрутизаторы, обеспечивающие поиск оптимального маршрута на основе анализа адресной информации, функционируют на сетевом уровне модели OSI. В качестве простейшего маршрутизирующего устройства между сегментами сети или различными локальными сетями может выступать и устройство, функционирующее на более низком канальном уровне модели OSI, называемое мостом.
Транспортный уровень. Первые три уровня образуют общую сеть, в которой коллективно могут работать многие пользователи. На транспортном уровне контролируется очередность пакетов сообщений и их принадлежность. Таким образом, в процессе обмена между компьютерами поддерживается виртуальная связь, аналогичная телефонной коммутации.
Сеансовый уровень. В некоторых случаях трудно организовать процесс взаимодействия между пользователями из-за обилия способов такого взаимодействия. Для устранения этих трудностей на данном уровне координируются и стандартизируются процессы установления сеанса, управления передачей и приемом пакетов сообщений, завершения сеанса. На сеансовом уровне между компьютерами устанавливается и завершается виртуальная связь по такому же принципу, как при голосовой телефонной связи.
Управление представлением. Программные средства этого уровня выполняют преобразования данных из внутреннего формата передающего компьютера во внутренний формат компьютера-получателя, если эти форматы отличаются друг от друга (например, IBM PC и DEC). Данный уровень включает функции, относящиеся к используемому набору символов, кодированию данных и способам представления данных на экранах дисплеев или печати. Помимо конвертирования форматов на данном уровне осуществляется сжатие передаваемых данных и их распаковка.
Прикладной уровень относится к функциям, которые обеспечивают поддержку пользователю на более высоком прикладном и системном уровнях, например:
• организация доступа к общим сетевым ресурсам: информации, дисковой памяти, программным приложениям, внешним устройствам (принтерам, стримерам и др.);
• общее управление сетью (управление конфигурацией, разграничение доступа к общим ресурсам сети, восстановление работоспособности после сбоев и отказов, управление производительностью);
• передача электронных сообщений, включая электронную почту;
• организация электронных конференций;
• диалоговые функции высокого уровня.
Модель OSI представляет собой стандартизированный каркас и общие рекомендации, требования же к конкретным компонентам сетевого программного обеспечения задаются протоколами.
Протокол является стандартом в области сетевого программного обеспечения и определяет совокупность функциональных и эксплуатационных требований к какому-либо его компоненту, которых придерживаются производители этого компонента. Требования протокола могут отличаться от требований эталонной модели OSI.
Международный институт инженеров по электротехнике и радиоэлектронике (IEEE) разработал стандарты для протоколов передачи данных в локальных сетях. Эти стандарты, которые описывают методы доступа к сетевым каналам данных, получили название IEEE 802.
Протоколы сетевого взаимодействия можно классифицировать по степени близости к физической среде передачи данных. Это протоколы:
• нижнего уровня, распространяемые на канальный и физический уровни модели OSI;
• среднего уровня, распространяемые на сетевой, транспортный и сеансовый уровни OSI;
• верхнего уровня, распространяемые на уровень представления и прикладной уровень модели OSI.
При каждой реализации протоколов вышестоящих уровней используются реализации протоколов нижестоящих уровней.
Протоколы нижнего уровня OSI соответствуют уровню сетевых аппаратных средств и нижнему уровню сетевого программного обеспечения. Среди наиболее распространенных стандартов данного уровня выделим следующие [11, 12, 30]:
• стандарт NDIS (Network Driver Interface Specification — спецификация интерфейса сетевых драйверов), разработанный совместно фирмами Microsoft и 3Com;
• стандарт ODI (Open Datalink Interface — открытый интерфейс связи), разработанный совместно фирмами Novell и Apple Computer.
Данные стандарты позволяют реализовывать протоколы среднего уровня независимо от сетевых аппаратных средств и обеспечивают совместное функционирование разнотипных протоколов среднего уровня. Универсальный интерфейс канального уровня представлен на рис. 4.4. Производители сетевых аппаратных средств, как правило, разрабатывают драйверы, удовлетворяющие обоим стандартам.
Драйвер сетевого адаптера является последним программным компонентом перед физическим уровнем модели OSI и называется подуровнем управления доступом к среде MAC (Media Access Control). Подуровень MAC ориентирован на выполнение таких функций, как непосредственное управление доступом к передающей среде, проверке пакетов сообщений на наличие ошибок.
Подуровень LLC (Logical Line Control) считается независимым от особенностей физической передающей среды и используемых методов доступа к каналам передачи данных. Стандарты по разработке интерфейсов для связи реализаций протоколов среднего уровня модели OSI с драйверами сетевых аппаратных средств относятся прежде всего к подуровню LLC.
Протоколы среднего уровня распространяются на сетевой, транспортный и сеансовый уровни эталонной модели. По типу межкомпьютерного обмена эти протоколы можно классифицировать следующим образом:
• сеансовые протоколы (протоколы виртуального соединения);
• дейтаграммные протоколы.
Сеансовые протоколы определяют организацию передачи информации между компьютерами по так называемому виртуальному каналу в три этапа:
• установление виртуального канала (установка сеанса);
• реализация непосредственного обмена информацией;
• уничтожение виртуального канала (разъединение).
В сеансовых протоколах порядок следования пакетов при передаче соответствует их исходному порядку в сообщении, а передача осуществляется с подтверждением доставки, а в случае потери отправленных пакетов они передаются повторно.
При использовании дейтаграммных протоколов пакеты сообщений передаются так называемыми дейтаграммами независимо друг от друга, поэтому порядок доставки пакетов каждого сообщения может не соответствовать их исходному порядку в сообщении. При этом пакеты сообщений передаются без подтверждения.
Таким образом, с точки зрения достоверности, сеансовые протоколы являются более предпочтительными, зато скорость передачи при использовании дейтаграммных протоколов гораздо выше.
Любой протокол среднего уровня предусматривает следующие этапы реализации межкомпьютерного обмена:
• инициализация связи;
• непосредственный информационный обмен;
• завершение обмена.
Наиболее часто используемыми наборами протоколов среднего уровня являются следующие:
• набор протоколов SPX/IPX, используемый в локальных сетях, функционирующих под управлением сетевой операционной системы NetWare;
• протоколы NetBIOS и NetBEUI, поддерживаемые большинством сетевых операционных систем и используемые только в локальных сетях;
• протоколы TCP/IP, являющиеся стандартом для глобальной сети Internet, используемые в локальных сетях и поддерживаемые большинством сетевых операционных систем.
Набор протоколов SPX/IPX используется в сетевой операционной системе NetWare фирмы Novell.
Протокол IPX (Internetwork Packet Exchange — межсетевой обмен пакетами) является дейтаграммным протоколом и соответствует сетевому уровню эталонной модели. Применяется для выполнения функций адресации при обмене пакетами сообщений.
Протокол SPX (Sequenced Packet Exchange — последовательный обмен пакетами) является сеансовым протоколом и соответствует транспортному и сеансовому уровням эталонной модели. По степени близости к самому низкому уровню эталонной модели протокол SPX находится над протоколом IPX и использует этот протокол.
Драйвер, реализующий протокол SPX использует в процессе своей работы драйвер, реализующий протокол IPX. Протокол IPX является более быстродействующим, чем протокол SPX.
Важным недостатком протоколов SPX и IPX является несовместимость с протоколами TCP/IP, используемыми в глобальной сети Интернет. Для подключения локальной сети NetWare к Интернету используется один из следующих способов:
• непосредственная инсталляция на каждом сетевом компьютере драйверов, реализующих набор протоколов TCP/IP;
• подключение локальной сети к Интернету через шлюз IPX-IP. Протоколы NetBIOS и NetBEUI разработаны фирмой IBM и предназначены только для локальных компьютерных сетей.
Протокол NetBIOS (Network Basic Input/Output System — базовая система ввода-вывода) соответствует сетевому, транспортному и сеансовому уровням эталонной модели. Реализация данного протокола обеспечивает прикладной интерфейс, используемый для создания сетевых программных приложений.
Протокол NetBEUI (Extended User Interface NetBIOS — расширенный пользовательский интерфейс NetBIOS) является модификацией предыдущего протокола и распространяется только на сетевой и транспортный уровни.
Реализации протоколов NetBIOS и NetBEUI обеспечивают решение следующих задач: поддержка имен, поддержка сеансового и дейтаграммного взаимодействия, получение информации о состоянии сети.
Достоинства протоколов NetBIOS и NetBEUI: удобная адресация, высокая производительность, самонастройка и хорошая защита от ошибок, экономное использование оперативной памяти.
Недостатки NetBIOS и NetBEUI связаны с отношением к глобальным сетям: отсутствие поддержки функций маршрутизации и низкая производительность.
Семейство протоколов TCP/IP было разработано для объединения различных компьютерных сетей в одну глобальную сеть, получившую название Интернет.
Семейство протоколов TCP/IP включает протоколы, относящиеся как к средним, так и другим уровням модели OSI:
• прикладной уровень и уровень представления — протокол передачи файлов (FTP), протоколы электронной почты (SMTP, РОРЗ, IMAP4), протоколы удаленного доступа (SLIP, PPP, Telnet), протокол сетевой файловой системы (NPS), протокол управления сетями (SNMP), протокол передачи гипертекста (НТРР) и др.;
• сеансовый и транспортные уровни — протоколы TCP и UDP;
• сетевой уровень — протоколы IP, ICMP, IGMP;
• канальный уровень — протоколы ARP, RARP.
Дейтаграммный протокол IP (Internet Protocol) является основным для сетевого уровня и обеспечивает маршрутизацию передаваемых пакетов сообщений.
Протокол ICMP (Internet Control Message Protocol) отвечает за обмен сообщениями об ошибках и другой важной информацией с программными средствами сетевого уровня на другом компьютере, маршрутизаторе или шлюзе.
Протокол IGMP (Internet Management Protocol) используется для отправки IP-пакетов множеству компьютеров в сети.
Протокол TCP (Transmission Control Protocol) является протоколом сетевого уровня и обеспечивает надежную передачу данных между двумя компьютерами путем организации виртуального канала обмена и использования его для передачи больших массивов данных.
Протокол UDP (User Datagram Protocol) реализует гораздо более простой сервис передачи, обеспечивая надежную доставку данных без установления логического соединения.
Протоколы верхнего уровня соответствуют уровню пользователей и прикладных программ и распространяются на уровень представления и прикладной уровень эталонной модели сетевого взаимодействия. Наиболее распространенными являются следующие высокоуровневые протоколы:
• перенаправления запросов и обмена сообщениями (SMB, NCP);
• управления сетями (SNMP);
• сетевой файловой системы (NFS);
• вызова удаленных процедур (RPC);
• повышающие эффективность использования протоколов TCP/IP среднего уровня (DNS, DHSP);
• удаленного доступа к компьютерным ресурсам (SLIP, PPP, Telnet);
• передачи файлов (FTP);
• передачи гипертекста (HTTP);
• электронной почты (SMTP, POPS, IMAP4);
• организации электронных конференций и системы новостей (NNTP).
Протокол SMB (Server Message Blocks — блоки серверных сообщений), разработанный совместно корпорациями Microsoft, Intel и IBM, используется в сетевых операционных системах Windows NT, Lan Manager, LAN Server. Данный протокол определяет серии команд, используемых для передачи информации между сетевыми компьютерами.
Протокол NCP (NetWare Core Protocol — протокол ядра NetWare) разработан фирмой Novell и используется в сетевых ОС NetWare.
Протокол SNMP (Simple Network Management Protocol — простой протокол управления сетью) осуществляет гибкое и полное управление сетью, при этом предполагается выполнение администратором следующих функций: управление конфигурацией, доступом к общим сетевым ресурсам, производительностью, подготовкой к восстановлению, восстановлением. При этом любая из функций управления должна обеспечивать решение трех базовых задач:
• получение информации о состоянии управляемого объекта;
• анализ полученной информации и выработка управляющих воздействий;
• передача управляющих воздействий на исполнение.
Протокол NFS (Network File System — сетевая файловая система) предназначен для предоставления универсального интерфейса работы с файлами для различных операционных систем, сетевых архитектур и протоколов среднего уровня.
Протокол RPC (Remote Procedure Call — сервис вызова удаленных процедур) предназначен для организации межпрограммных взаимодействий для сети «клиент—сервер» и обеспечивает связь между процессами-клиентами и процессами-серверами, реализованными на разных компьютерах сети.
Протокол DNS (Domain Name System — система доменных имен) предназначен для установления соответствия между смысловыми символьными именами и IP — адресами компьютеров.
Протокол DHCP (Dynamic Host Configuration Protocol — протокол динамической конфигурации компьютеров) позволяет автоматически назначать IP-адреса подключаемых к сети компьютеров и изменять их при перемещении из одной подсети в другую.
Протокол SLIP (Serial Line Internet Protocol — протокол Интернета последовательного соединения) обеспечивает работу протоколов TCP/IP при коммутируемом телефонном соединении.
Протокол РРР (Point-to-Point Protocol — протокол «точка-точка») обеспечивает установление соединения и реализацию непосредственного обмена информацией, а также по сравнению со SLIP позволяет решать следующие задачи:
• конфигурация и проверка качества связи;
• подтверждение подлинности (аутентификация) удаленного пользователя;
• динамическое присвоение адресов IP и управление этими адресами;
• обнаружение и коррекция ошибок и др.
Протокол РРТР (Point-to-Point Tunntling Protocol — туннельный протокол «точка-точка») ориентирован на поддержку мульти-протокольных виртуальных частных сетей (Virtual Private Networks — VPN) и предоставляет возможность удаленным пользователям иметь безопасный доступ к корпоративным сетям по Интернету.
Протокол Telnet является общепризнанным стандартом удаленного дистанционного управления в Интернете, позволяющим в режиме командной строки запускать и выполнять программы на компьютере, с которым установлено удаленное соединение.
ОБРАБОТКА ИНФОРМАЦИИ
Обработка информации состоит в получении одних «информационных объектов» из других «информационных объектов» путем выполнения некоторых алгоритмов и является одной из основных операций, осуществляемых над информацией, и главным средством увеличения ее объема и разнообразия.
На самом верхнем уровне можно выделить числовую и нечисловую обработку. В указанные виды обработки вкладывается различная трактовка содержания понятия «данные». При числовой обработке используются такие объекты, как переменные, векторы, матрицы, многомерные массивы, константы и т.д. При нечисловой обработке объектами могут быть файлы, записи, поля, иерархии, сети, отношения и т.д. Другое отличие заключается в том, что при числовой обработке содержание данных не имеет большого значения, в то время как при нечисловой обработке нас интересуют непосредственные сведения об объектах, а не их совокупность в целом.
С точки зрения реализации на основе современных достижений вычислительной техники выделяют следующие виды обработки информации:
• последовательная обработка, применяемая в традиционной фоннеймановской архитектуре ЭВМ, располагающей одним процессором;
• параллельная обработка, применяемая при наличии нескольких процессоров в ЭВМ;
• конвейерная обработка, связанная с использованием в архитектуре ЭВМ одних и тех же ресурсов для решения разных задач, причем если эти задачи тождественны, то это последовательный конвейер, если задачи одинаковые — векторный конвейер.
Принято относить существующие архитектуры ЭВМ с точки зрения обработки информации к одному из следующих классов [35].
Архитектуры с одиночным потоком команд и данных (SISD). Кэтому классу относятся традиционные фоннеймановские однопроцессорные системы, где имеется центральный процессор, работающий с парами «атрибут — значение».
Архитектуры с одиночными потоками команд и данных (SIMD).Особенностью данного класса является наличие одного (центрального) контроллера, управляющего рядом одинаковых процессоров. В зависимости от возможностей контроллера и процессорных элементов, числа процессоров, организации режима поиска и характеристик маршрутных и выравнивающих сетей выделяют:
• матричные процессоры, используемые для решения векторных и матричных задач;
• ассоциативные процессоры, применяемые для решения нечисловых задач и использующие память, в которой можно обращаться непосредственно к информации, хранящейся в ней;
• процессорные ансамбли, применяемые для числовой и нечисловой обработки;
• конвейерные и векторные процессоры.
Архитектуры с множественным потоком команд и одиночным потоком данных (MISD).К этому классу могут быть отнесены конвейерные процессоры.
Архитектуры с множественным потоком команд и множественным потоком данных (MIMD).К этому классу могут быть отнесены следующие конфигурации: мультипроцессорные системы, системы с мультобработкой, вычислительные системы из многих машин, вычислительные сети.
Основные процедуры обработки данных представлены на рис. 4.5.
Создание данных, как процесс обработки, предусматривает их образование в результате выполнения некоторого алгоритма и дальнейшее использование для преобразований на более высоком Уровне.
Модификация данных связана с отображением изменений в реальной предметной области, осуществляемых путем включения новых данных и удаления ненужных.
Контроль, безопасность и целостность направлены на адекватное отображение реального состояния предметной области в информационной модели и обеспечивают защиту информации от несанкционированного доступа (безопасность) и от сбоев и повреждений технических и программных средств.
Поиск информации, хранимой в памяти компьютера, осуществляется как самостоятельное действие при выполнении ответов на различные запросы и как вспомогательная операция при обработке информации.
Поддержка принятия решения является наиболее важным действием, выполняемым при обработке информации. Широкая альтернатива принимаемых решений приводит к необходимости использования разнообразных математических моделей [32, 33].
Создание документов, сводок, отчетов заключается в преобразовании информации в формы, пригодные для чтения как человеком, так и компьютером. С этим действием связаны и такие операции, как обработка, считывание, сканирование и сортировка документов.
При преобразовании информации осуществляется ее перевод из одной формы представления или существования в другую, что определяется потребностями, возникающими в процессе реализации информационных технологий.
Реализация всех действий, выполняемых в процессе обработки информации, осуществляется с помощью разнообразных программных средств.
Наиболее распространенной областью применения технологической операции обработки информации является принятие решений.
В зависимости от степени информированности о состоянии управляемого процесса, полноты и точности моделей объекта и системы управления, взаимодействия с окружающей средой, процесс принятия решения протекает в различных условиях:
1. Принятие решений в условиях определенности.В этой задаче модели объекта и системы управления считаются заданными, а влияние внешней среды — несущественным. Поэтому между выбранной стратегией использования ресурсов и конечным результатом существует однозначная связь, откуда следует, что в условиях определенности достаточно использовать решающее правило для оценки полезности вариантов решений, принимая в качестве оптимального то, которое приводит к наибольшему эффекту. Если таких стратегий несколько, то все они считаются эквивалентными. Для поиска решений в условиях определенности используют методы математического программирования.
2. Принятие решений в условиях риска.В отличие от предыдущего случая для принятия решений в условиях риска необходимо учитывать влияние внешней среды, которое не поддается точному прогнозу, а известно только вероятностное распределение ее состояний. В этих условиях использование одной и той же стратегии может привести к различным исходам, вероятности появления которых считаются заданными или могут быть определены. Оценку и выбор стратегий проводят с помощью решающего правила, учитывающего вероятность достижения конечного результата.
3. Принятие решений в условиях неопределенности.Как и впредыдущей задаче между выбором стратегии и конечным результатом отсутствует однозначная связь. Кроме того, неизвестны также значения вероятностей появления конечных результатов, которые либо не могут быть определены, либо не имеют в контексте содержательного смысла. Каждой паре «стратегия — конечный результат» соответствует некоторая внешняя оценка в виде выигрыша. Наиболее распространенным является использование критерия получения максимального гарантированного выигрыша.
4. Принятие решений в условиях многокритериальности.В любой из перечисленных выше задач многокритериальность возникает в случае наличия нескольких самостоятельных, не сводимых одна к другой целей. Наличие большого числа решений усложняет оценку и выбор оптимальной стратегии. Одним из возможных путей решения является использование методов моделирования.
Решение задач с помощью искусственного интеллекта заключается в сокращении перебора вариантов при поиске решения, при этом программы реализуют те же принципы, которыми пользуется в процессе мышления человек.
Экспертная система пользуется знаниями, которыми она обладает в своей узкой области, чтобы офаничить поиск на пути к решению задачи путем постепенного сужения круга вариантов.
Для решения задач в экспертных системах используют:
• метод логического вывода, основанный на технике доказательств, называемой резолюцией и использующей опровержение отрицания (доказательство «от противного»);
• метод структурной индукции, основанный на построении дерева принятия решений для определения объектов из большого числа данных на входе;
• метод эвристических правил, основанных на использовании опыта экспертов, а не на абстрактных правилах формальной логики;
• метод машинной аналогии, основанный на представлении информации о сравниваемых объектах в удобном виде, например, в виде структур данных, называемых фреймами.
Источники «интеллекта», проявляющегося при решении задачи, могут оказаться бесполезными либо полезными или экономичными в зависимости от определенных свойств области,в которой поставлена задача. Исходя из этого, может быть осуществлен выбор метода построения экспертной системы или использования готового программного продукта.
Процесс выработки решения на основе первичных данных, схема которого представлена на рис. 4.6, можно разбить на два этапа: выработка допустимых вариантов решений путем математической формализации с использованием разнообразных моделей и выбор оптимального решения на основе субъективных факторов.
Информационные потребности лиц, принимающих решение, во многих случаях ориентированы на интефальные технико-экономические показатели, которые могут быть получены в результате обработки первичных данных, отражающих текущую деятельность предприятия. Анализируя функциональные взаимосвязи между итоговыми и первичными данными, можно построить так называемую информационную схему, которая отражает процессы афеги-рования информации. Первичные данные, как правило, чрезвычайно разнообразны, интенсивность их поступления высока, а общий объем на интересующем интервале велик. С другой стороны состав интефальных показателей относительно мал, а требуемый период их актуализации может быть значительно короче периода изменения первичных данных — аргументов.
Для поддержки принятия решений обязательным является наличие следующих компонент:
• обобщающего анализа;
• прогнозирования;
• ситуационного моделирования.
В настоящее время принято выделять два типа информационных систем поддержки принятия решений.
Системы поддержки принятия решений DSS (Decision Support System) осуществляют отбор и анализ данных по различным характеристикам и включают средства:
• доступа к базам данных;
• извлечения данных из разнородных источников;
• моделирования правил и стратегии деловой деятельности;
• деловой графики для представления результатов анализа;
• анализа «если что»;
• искусственного интеллекта на уровне экспертных систем. Системы оперативной аналитической обработки OLAP (OnLine
Analysis Processing) для принятия решений используют следующие средства:
• мощную многопроцессорную вычислительную технику в виде специальных OLAP-серверов;
• специальные методы многомерного анализа;
• специальные хранилища данных Data Warehouse.
Реализация процесса принятия решений заключается в построении информационных приложений. Выделим в информационном приложении типовые функциональные компоненты, достаточные для формирования любого приложения на основе БД [2].
PS (Presentation Services) — средства представления.Обеспечиваются устройствами, принимающими ввод от пользователя и отображающими то, что сообщает ему компонент логики представления PL, плюс соответствующая программная поддержка. Может быть текстовым терминалом или X-терминалом, а также персональным компьютером или рабочей станцией в режиме программной эмуляции терминала или Х-терминала.
PL (Presentation Logic) — логика представления.Управляет взаимодействием между пользователем и ЭВМ. Обрабатывает действия пользователя по выбору альтернативы меню, по нажатию кнопки или выбору элемента из списка.
BL (Business or Application Logic) — прикладная логика.Набор правил для принятия решений, вычислений и операций, которые должно выполнить приложение.
DL (Data Logic) — логика управления данными.Операции с базой данных (SQL-операторы SELECT, UPDATE и INSERT), которые нужно выполнить для реализации прикладной логики управления данными.
DS (Data Services) — операции с базой данных.Действия СУБД, вызываемые для выполнения логики управления данными, такие как манипулирование данными, определения данных, фиксация или откат транзакций и т.п. СУБД обычно компилирует SQL-приложения.
FS (File Services) — файловые операции.Дисковые операции чтения и записи данных для СУБД и других компонент. Обычно являются функциями ОС.
Среди средств разработки информационных приложений можно выделить следующие основные группы:
• традиционные системы программирования;
• инструменты для создания файл-серверных приложений;
• средства разработки приложений «клиент—сервер»;
• средства автоматизации делопроизводства и документооборота;
• средства разработки Интернет/Интранет-приложений;
• средства автоматизации проектирования приложений.
ХРАНЕНИЕ ИНФОРМАЦИИ
Хранение и накопление являются одними из основных действий, осуществляемых над информацией и главным средством обеспечения ее доступности в течение некоторого промежутка времени. В настоящее время определяющим направлением реализации этой операции является концепция базы данных, склада (хранилища) данных.
База данных может быть определена как совокупность взаимосвязанных данных, используемых несколькими пользователями и хранящихся с регулируемой избыточностью. Хранимые данные не зависят от программ пользователей, для модификации и внесения изменений применяется общий управляющий метод.
Банк данных— система, представляющая определенные услуги по хранению и поиску данных определенной группе пользователей по определенной тематике.
Система баз данных— совокупность управляющей системы, прикладного программного обеспечения, базы данных, операционной системы и технических средств, обеспечивающих информационное обслуживание пользователей.
Хранилище данных(ХД — используют также термины Data Warehouse, «склад данных», «информационное хранилище») — это база, хранящая данные, агрегированные по многим измерениям. Основные отличия ХД от БД: агрегирование данных; данные из ХД никогда не удаляются; пополнение ХД происходит на периодической основе; формирование новых агрегатов данных, зависящих от старых — автоматическое; доступ к ХД осуществляется на основе многомерного куба или гиперкуба.
Альтернативой хранилищу данных является концепция витрин данных (Data Mart). Витрины данных— множество тематических БД, содержащих информацию, относящуюся к отдельным информационным аспектам предметной области.
Еще одним важным направлением развития баз данных являются репозитарии. Репозитарий, в упрощенном виде, можно рассматривать просто как базу данных, предназначенную для хранения не пользовательских, а системных данных.4Технология репози-тариев проистекает из словарей данных, которые по мере обогащения новыми функциями и возможностями приобретали черты инструмента для управления метаданными.
Каждый из участников действия (пользователь, группа пользователей, «физическая память») имеет свое представление об информации.
По отношению к пользователям применяют трехуровневое представление для описания предметной области: концептуальное, логическое и внутреннее (физическое) (рис. 4.7).
Концептуальный уровень связан с частным представлением данных группы пользователей в виде внешней схемы, объединяемых общностью используемой информации. Каждый конкретный пользователь работает с частью БД и представляет ее в виде внешней модели Этот уровень характеризуется разнообразием используемых моделей (модель «сущность—связь», ER-модель, модель Чена), бинарные и инфологические модели, семантические сети). На рис. 4.8 представлен фрагмент предметной базы данных «Сбыт» и одно из возможных его концептуальных представлений, которое отражает не только объекты и их свойства, но и взаимосвязи между ними.
Логический уровень является обобщенным представлением данных всех пользователей в абстрактной форме. Используются три вида моделей: иерархические, сетевые и реляционные.
Сетевая модель является моделью объектов-связей, допускающей только бинарные связи «многие к одному» и использует для описания модель ориентированных графов
Иерархическая модель является разновидностью сетевой, являющейся совокупностью деревьев (лесом).
Реляционная модель использует представление данных в виде таблиц (реляций), в ее основе лежит математическое понятие теоретико-множественного отношения, она базируется на реляционной алгебре и теории отношений.
Представление предметной базы данных «Сбыт» на логическом уровне для различных моделей показано на рис. 4.9.
Физический (внутренний) уровень связан со способом фактического хранения данных в физической памяти ЭВМ. Во многом определяется конкретным методом управления. Основными компонентами физического уровня являются хранимые записи, объединяемые в блоки; указатели, необходимые для поиска данных; данные переполнения; промежутки между блоками; служебная информация.
По наиболее характерным признакам БД можно классифицировать следующим образом:
по способу хранения информации:
• интегрированные;
• распределенные; по типу пользователя:
• монопользовательские;
• многопользовательские;
по характеру использования данных:
• прикладные;
• предметные.
В настоящее время при проектировании БД используют два подхода. Первый из них основан на стабильности данных, что обеспечивает наибольшую гибкость и адаптируемость к используемым приложениям. Применение такого подхода целесообразно в тех случаях, когда не предъявляются жесткие требования к эффективности функционирования (объему памяти и продолжительности поиска), существует большое число разнообразных задач с изменяемыми и непредсказуемыми запросами.
Второй подход базируется на стабильности процедур запросов к БД и является предпочтительным при жестких требованиях к эффективности функционирования, особенно это касается быстродействия.
Другим важным аспектом проектирования БД является проблема интеграции и распределения данных. Господствовавшая до недавнего времени концепция интеграции данных при резком увеличении их объема, оказалась несостоятельной. Этот факт, а также увеличение объемов памяти внешних запоминающих устройств при их удешевлении, широкое внедрение сетей передачи данных способствовало внедрению распределенных БД. Распределение данных по месту их использования может осуществляться различными способами:
1. Копируемые данные.Одинаковые копии данных хранятся в различных местах использования, так как это дешевле передачи данных. Модификация данных контролируется централизованно;
2. Подмножество данных.Группы данных, совместимые с исходной базой данных, хранятся отдельно для местной обработки;
3. Реорганизованные данные.Данные в системе интегрируются при передаче на более высокий уровень;
4. Секционированные данные.На различных объектах используются одинаковые структуры, но хранятся разные данные;
5. Данные с отдельной подсхемой.На различных объектах используются различные структуры данных, объединяемые в интегрированную систему;
6. Несовместимые данные.Независимые базы данных, спроектированные без координации, требующие объединения.
Важное влияние на процесс создания БД оказывает внутреннее содержание информации. Существует два направления:
• прикладные БД, ориентированные на конкретные приложения, например, может быть создана БД для учета и контроля поступления материалов;
• предметные БД, ориентированные на конкретный класс данных, например, предметная БД «Материалы», которая может быть использована для различных приложений.
Конкретная реализация системы баз данных с одной стороны определяется спецификой данных предметной области, отраженной в концептуальной модели, а с другой стороны типом конкретной СУБД (МВД), устанавливающей логическую и физическую организацию.
Для работы с БД используется специальный обобщенный инструментарий в виде СУБД (МВД), предназначенный для управления БД и обеспечения интерфейса пользователя.
Основные стандарты СУБД:
• независимость данных на концептуальном-, логическом, физическом уровнях;
• универсальность (по отношению к концептуальному и логическому уровням, типу ЭВМ);
• совместимость, неизбыточность;
• безопасность и целостность данных;
• актуальность и управляемость.
Существуют два основных направления реализации СУБД: программное и аппаратное.
Программная реализация (в дальнейшем СУБД) представляет собой набор программных модулей, работает под управлением конкретной ОС и выполняет следующие функции:
• описание данных на концептуальном и логическом уровнях;
• загрузку данных;
• хранение данных;
• поиск и ответ на запрос (транзакцию);
• внесение изменений;
• обеспечение безопасности и целостности. Обеспечивает пользователя следующими языковыми средствами:
• языком описания данных (ЯОД);
• языком манипулирования данными (ЯМД);
• прикладным (встроенным) языком данных (ПЯД, ВЯД).
Аппаратная реализация предусматривает использование так называемых машин баз данных (МБД). Их появление вызвано возросшими объемами информации и требованиями к скорости доступа. Слово «машина» в термине МБД означает вспомогательный периферийный процессор. Термин «компьютер БД» — автономный процессор баз данных или процессор, поддерживающий СУБД. Основные направления МБД:
• параллельная обработка;
• распределенная логика;
• ассоциативные ЗУ;
• конвейерные ЗУ;
• фильтры данных и др.
На рис. 4.10 представлена совокупность процедур проектирования БД, которые можно объединить в четыре этапа. На этапе формулирования и анализа требований устанавливаются цели организации, определяются требования к БД. Эти требования документируются в форме, доступной конечному пользователю и проектировщику БД. Обычно при этом используется методика интервьюирования персонала различных уровней управления.
Этап концептуального проектирования заключается в описании и синтезе информационных требований пользователей в первоначальный проект БД. Результатом этого этапа является высокоуровневое представление информационных требований пользователей на основе различных подходов.
В процессе логического проектирования высокоуровневое представление данных преобразуется в структуре используемой СУБД. Полученная логическая структура БД может быть оценена количественно с помощью различных характеристик (число обращений к логическим записям, объем данных в каждом приложении, общий объем данных и т.д.). На основе этих оценок логическая структура может быть усовершенствована с целью достижения большей эффективности.
На этапе физического проектирования решаются вопросы, связанные с производительностью системы, определяются структуры хранения данных и методы доступа.
Весь процесс проектирования БД является итеративным, при этом каждый этап рассматривается как совокупность итеративных процедур, в результате выполнения которых получают соответствующую модель.
Взаимодействие между этапами проектирования и словарной системой необходимо рассматривать отдельно. Процедуры проектирования могут использоваться независимо в случае отсутствия словарной системы. Сама словарная система может рассматриваться как элемент автоматизации проектирования.
Этап расчленения БД связан с разбиением ее на разделы и синтезом различных приложений на основе модели. Основными факторами, определяющими методику расчленения, помимо указанных на рис. 4.10 являются: размер каждого раздела (допустимые размеры); модели и частоты использования приложений; структурная совместимость; факторы производительности БД. Связь между разделом БД и приложениями характеризуется идентификатором типа приложения, идентификатором узла сети, частотой использования приложения и его моделью.
Модели приложений могут быть классифицированы следующим образом:
1. Приложения, использующие единственный файл;
2. Приложения, использующие несколько файлов, в том числе:
• допускающие независимую параллельную обработку;
• допускающие синхронизированную обработку. Сложность реализации этапа размещения БД определяется многовариантностью. Поэтому на практике рекомендуется в первую очередь рассмотреть возможность использования определенных допущений, упрощающих функции СУБД, например, допустимость временного рассогласования БД, осуществление процедуры обновления БД из одного узла и др. Такие допущения оказывают большое влияние на выбор СУБД и рассматриваемую фазу проектирования.
Средства проектирования и оценочные критерии используются на всех стадиях разработки. Любой метод проектирования (аналитический, эвристический, процедурный), реализованный в виде программы, становится инструментальным средством проектирования, практически не подверженным влиянию стиля проектирования.
В настоящее время неопределенность при выборе критериев является наиболее слабым местом в проектировании БД. Это связано с трудностью описания и идентификации бесконечного числа альтернативных решений. При этом следует иметь в виду, что существует много признаков оптимальности, являющихся неизмеримыми, им трудно дать количественную оценку или представить их в виде целевой функции. Поэтому оценочные критерии принято делить на количественные и качественные. Наиболее часто используемые критерии оценки БД, сгруппированные в такие категории, представлены ниже.
Количественные критерии: время, необходимое для ответа на запрос, стоимость модификации, стоимость памяти, время на создание, стоимость на реорганизацию.
Качественные критерии: гибкость, адаптивность, доступность для новых пользователей, совместимость с другими системами, возможность конвертирования в другую вычислительную среду, возможность восстановления, возможность распределения и расширения.
Трудность в оценке проектных решений связана также с различной чувствительностью и временем действия критериев. Например, критерий эффективности обычно является краткосрочным и чрезвычайно чувствительным к проводимыми изменениям, а такие понятия, как адаптируемость и конвертируемость, проявляются на длительных временных интервалах и менее чувствительны к воздействию внешней среды.
Предназначение склада данных — информационная поддержка принятия решений, а не оперативная обработка данных. Потому база данных и склад данных не являются одинаковыми понятиями. Архитектура ХД представлена на рис. 4.11.
Основные принципы организации хранилищ данных следующие [44,45].
1. Предметная ориентация. В оперативной базе данных обычно поддерживается несколько предметных областей, каждая из которых может послужить источником данных для ХД. Например, для магазина, торгующего видео- и музыкальной продукцией, интерес представляют следующие предметные области: клиенты, видеокассеты, CD-диски и аудиокассеты, сотрудники, поставщики. Явно прослеживается аналогия между предметными областями ХД и классами объектов в объектно-ориентированных базах данных. Это говорит о возможности применения методов проектирования, применяемых в объектно-ориентированных СУБД.
2. Средства интеграции. Приведение разных представлений одних и тех же сущностей к некоторому общему типу.
3. Постоянство данных. В ХД не поддерживаются операции модификации в смысле традиционных баз данных. В ХД поддерживается модель «массовых загрузок» данных, осуществляемых в заданные моменты времени по установленным правилам в отличие от традиционной модели индивидуальных модификаций.
4. Хронология данных. Благодаря средствам интеграции реализуется определенный хронологический временной аспект, присущий содержимому ХД.
Основные функции репозитариев:
• парадигма включения/выключения и некоторые формальные процедуры для объектов;
• поддержка множественных версий объектов и процедуры управления конфигурациями для объектов;
• оповещение инструментальных и рабочих систем об интересующих их событиях;
• управление контекстом и разные способы обзора объектов репозитария;
• определение потоков работ.
Рассмотрим кратко основные направления научных исследований в области баз данных:
• развитие теории реляционных баз данных;
• моделирование данных и разработка конкретных моделей разнообразного назначения;
• отображение моделей данных, направленных на создание методов их преобразования и конструирования коммутативных отображений, разработку архитектурных аспектов отображения моделей данных и спецификаций определения отображений для конкретных моделей данных;
• создание СУБД с мультимодельным внешним уровнем, обеспечивающих возможности отображения широко распространенных моделей;
• разработка, выбор и оценка методов доступа;
• создание самоописываемых баз данных, позволяющих применять единые методы доступа для данных и метаданных;
• управление конкурентным доступом;
• развитие системы программирования баз данных и знаний, которые обеспечивали бы единую эффективную среду как для разработки приложений, так и для управления данными;
• совершенствование машины баз данных;
• разработка дедуктивных баз данных, основанных на применении аппарата математической логики и средств логического программирования, а также пространственно-временных баз данных;
• интеграция неоднородных информационных ресурсов.