Транспортирование информации
Основным физическим способом реализации операции транспортировки является использование локальных сетей и сетей передачи данных. При разработке и использовании сетей для обеспечения совместимости используется ряд стандартов, объединенных в семиуровневую модель открытых систем, принятую во всем мире и определяющую правила взаимодействия компонентов сети на данном уровне (протокол уровня) и правила взаимодействия компонентов различных уровней (межуровневый интерфейс) [4, 36]. Международные стандарты в области сетевого информационного обмена нашли отражение в эталонной семиуровневой модели, известной как модель OSI (Open System Intercongtction — связь открытых систем) (рис. 4.3). Данная модель разработана международной организацией по стандартизации (International Standards Organization — ISO). Большинство производителей сетевых про-граммно-аппаратных средств стремятся придерживаться модели OSI. Но в целом добиться полной совместимости пока не удается.
Физический уровень реализует физическое управление и относится к физической цепи, например телефонной, по которой передается информация. На этом уровне модель OSI определяет физические, электрические, функциональные и процедурные характеристики цепей связи, а также требования к сетевым адаптерам и модемам.
Канальный уровень. На этом уровне осуществляется управление звеном сети (каналом) и реализуется пересылка блоков (совокупности битов) информации по физическому звену. Осуществляет такие процедуры управления, как определение начала и конца блока, обнаружение ошибок передачи, адресация сообщений и др. Канальный уровень определяет правила совместного использования сетевых аппаратных средств компьютерами сети.
Сетевой уровень относится к виртуальной (воображаемой) цепи, которая не обязана существовать физически. С помощью интерфейса, обеспечиваемого этим уровнем, удается «спрятать» сложности управления передачей на физическом уровне. Программные средства данного уровня обеспечивают определение маршрута передачи пакетов в сети. Маршрутизаторы, обеспечивающие поиск оптимального маршрута на основе анализа адресной информации, функционируют на сетевом уровне модели OSI. В качестве простейшего маршрутизирующего устройства между сегментами сети
или различными локальными сетями может выступать и устройство, функционирующее на более низком канальном уровне модели OSI, называемое мостом.
Транспортный уровень. Первые три уровня образуют общую сеть, в которой коллективно могут работать многие пользователи. На транспортном уровне контролируется очередность пакетов сообщений и их принадлежность. Таким образом, в процессе обмена между компьютерами поддерживается виртуальная связь, аналогичная телефонной коммутации.
Сеансовый уровень. В некоторых случаях трудно организовать процесс взаимодействия между пользователями из-за обилия способов такого взаимодействия. Для устранения этих трудностей на данном уровне координируются и стандартизируются процессы установления сеанса, управления передачей и приемом пакетов сообщений, завершения сеанса. На сеансовом уровне между компьютерами устанавливается и завершается виртуальная связь по такому же принципу, как при голосовой телефонной связи.
Управление представлением. Программные средства этого уровня выполняют преобразования данных из внутреннего формата передающего компьютера во внутренний формат компьютера-получателя, если эти форматы отличаются друг от друга (например, IBM PC и DEC). Данный уровень включает функции, относящиеся к используемому набору символов, кодированию данных и способам представления данных на экранах дисплеев или печати. Помимо конвертирования форматов на данном уровне осуществляется сжатие передаваемых данных и их распаковка.
Прикладной уровень относится к функциям, которые обеспечивают поддержку пользователю на более высоком прикладном и системном уровнях, например:
• организация доступа к общим сетевым ресурсам: информации, дисковой памяти, программным приложениям, внешним устройствам (принтерам, стримерам и др.);
• общее управление сетью (управление конфигурацией, разграничение доступа к общим ресурсам сети, восстановление работоспособности после сбоев и отказов, управление производительностью);
• передача электронных сообщений, включая электронную почту;
• организация электронных конференций;
• диалоговые функции высокого уровня
Уровень сетевых аппаратных средств
Модель OS1 представляет собой стандартизированный каркас и общие рекомендации, требования же к конкретным компонентам сетевого программного обеспечения задаются протоколами.
Протокол является стандартом в области сетевого программного обеспечения и определяет совокупность функциональных и эксплуатационных требований к какому-либо его компоненту, которых придерживаются производители этого компонента. Требования протокола могут отличаться от требований эталонной модели OSI.
Международный институт инженеров по электротехнике и радиоэлектронике (1ЕЕЕ) разработал стандарты для протоколов передачи данных в локальных сетях. Эти стандарты, которые описывают методы доступа к сетевым каналам данных, получили название IEEE 802.
Протоколы сетевого взаимодействия можно классифицировать по степени близости к физической среде передачи данных. Это протоколы:
• нижнего уровня, распространяемые на канальный и физический уровни модели OSI;
• среднего уровня, распространяемые на сетевой, транспортный и сеансовый уровни OSI;
• верхнего уровня, распространяемые на уровень представления и прикладной уровень модели OSI.
При каждой реализации протоколов вышестоящих уровней используются реализации протоколов нижестоящих уровней.
Протоколы нижнего уровня OSI соответствуют уровню сетевых аппаратных средств и нижнему уровню сетевого программного обеспечения. Среди наиболее распространенных стандартов данного уровня выделим следующие [11, 12, 30]:
• стандарт NDIS (Network Driver Interface Specification — спецификация интерфейса сетевых драйверов), разработанный совместно фирмами Microsoft и 3Com;
• стандарт ODI (Open Datalink Interface — открытый интерфейс связи), разработанный совместно фирмами Novell и Apple Computer.
Данные стандарты позволяют реализовывать протоколы среднего уровня независимо от сетевых аппаратных средств и обеспечивают совместное функционирование разнотипных протоколов среднего уровня. Универсальный интерфейс канального уровня представлен на рис. Производители сетевых аппаратных средств, как правило, разрабатывают драйверы, удовлетворяющие обоим стандартам.
Драйвер сетевого адаптера является последним программным компонентом перед физическим уровнем модели OSI и называется подуровнем управления доступом к среде MAC (Media Access Control). Подуровень MAC ориентирован на выполнение таких функций, как непосредственное управление доступом к передающей среде, проверке пакетов сообщений на наличие ошибок.
Подуровень LLC (Logical Line Control) считается независимым от особенностей физической передающей среды и используемых методов доступа к каналам передачи данных. Стандарты по разработке интерфейсов для связи реализаций протоколов среднего уровня модели OSI с драйверами сетевых аппаратных средств относятся прежде всего к подуровню LLC.
Протоколы среднего уровня распространяются на сетевой, транспортный и сеансовый уровни эталонной модели. По типу межкомпьютерного обмена эти протоколы можно классифицировать следующим образом:
• сеансовые протоколы (протоколы виртуального соединения);
• дейтаграммные протоколы.
Сеансовые протоколы определяют организацию передачи информации между компьютерами по так называемому виртуальному каналу в три этапа:
• установление виртуального канала (установка сеанса);
• реализация непосредственного обмена информацией;
• уничтожение виртуального канала (разъединение).
В сеансовых протоколах порядок следования пакетов при передаче соответствует их исходному порядку в сообщении, а передача осуществляется с подтверждением доставки, а в случае потери отправленных пакетов они передаются повторно.
При использовании дейтаграммных протоколов пакеты сообщений передаются так называемыми дейтаграммами независимо друг от друга, поэтому порядок доставки пакетов каждого сообщения может не соответствовать их исходному порядку в сообщении. При этом пакеты сообщений передаются без подтверждения.
Таким образом, с точки зрения достоверности, сеансовые протоколы являются более предпочтительными, зато скорость передачи при использовании дейтаграммных протоколов гораздо выше.
Любой протокол среднего уровня предусматривает следующие этапы реализации межкомпьютерного обмена:
• инициализация связи;
• непосредственный информационный обмен;
• завершение обмена.
Наиболее часто используемыми наборами протоколов среднего уровня являются следующие:
• набор протоколов SPX/1PX, используемый в локальных сетях, функционирующих под управлением сетевой операционной системы 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, РРР, 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, РРР, Telnet);
• передачи файлов (FTP);
• передачи гипертекста (HTTP);
• электронной почты (SMTP, РОРЗ, 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].
Создание документов, сводок, отчетов заключается в преобразовании информации в формы, пригодные для чтения как человеком, так и компьютером. С этим действием связаны и такие операции, как обработка, считывание, сканирование и сортировка документов.
При преобразовании информации осуществляется ее перевод из одной формы представления или существования в другую, что определяется потребностями, возникающими в процессе реализации информационных технологий.
Реализация всех действий, выполняемых в процессе обработки информации, осуществляется с помощью разнообразных программных средств.
Наиболее распространенной областью применения технологической операции обработки информации является принятие решений.
Решение задач с помощью искусственного интеллекта заключается в сокращении перебора вариантов при поиске решения, при этом программы реализуют те же принципы, которыми пользуется в процессе мышления человек.
Экспертная система пользуется знаниями, которыми она обладает в своей узкой области, чтобы ограничить поиск на пути к решению задачи путем постепенного сужения круга вариантов.
Для решения задач в экспертных системах используют:
• метод логического вывода, основанный на технике доказательств, называемой резолюцией и использующей опровержение отрицания (доказательство «от противного»);
• метод структурной индукции, основанный на построении дерева принятия решений для определения объектов из большого числа данных на входе;
• метод эвристических правил, основанных на использовании опыта экспертов, а не на абстрактных правилах формальной логики;
• метод машинной аналогии, основанный на представлении информации о сравниваемых объектах в удобном виде, например, в виде структур данных, называемых фреймами.
Источники «интеллекта», проявляющегося при решении задачи, могут оказаться бесполезными либо полезными или экономичными в зависимости от определенных свойств области,в которой поставлена задача. Исходя из этого, может быть осуществлен выбор метода построения экспертной системы или использования готового программного продукта.
Процесс выработки решения на основе первичных данных, можно разбить на два этапа: выработка допустимых вариантов решений путем математической формализации с использованием разнообразных моделей и выбор оптимального решения на основе субъективных факторов.
Информационные потребности лиц, принимающих решение, во многих случаях ориентированы на интегральные технико-экономические показатели, которые могут быть получены в результате обработки первичных данных, отражающих текущую деятельность предприятия. Анализируя функциональные взаимосвязи между итоговыми и первичными данными, можно построить так называемую информационную схему, которая отражает процессы агрегирования информации. Первичные данные, как правило, чрезвычайно разнообразны, интенсивность их поступления высока, а общий объем на интересующем интервале велик. С другой стороны состав интегральных показателей относительно мал, а требуемый период их актуализации может быть значительно короче периода изменения первичных данных — аргументов.
Для поддержки принятия решений обязательным является наличие следующих компонент:
• обобщающего анализа;
• прогнозирования;
• ситуационного моделирования.
В настоящее время принято выделять два типа информационных систем поддержки принятия решений.
Системы поддержки принятия решений 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.7).
Концептуальный уровень связан с частным представлением данных группы пользователей в виде внешней схемы, объединяемых общностью используемой информации. Каждый конкретный пользователь работает с частью БД и представляет ее в виде внешней модели. Этот уровень характеризуется разнообразием используемых моделей (модель «сущность—связь», ER-модель, модель Чена), бинарные и инфологические модели, семантические сети). На рис. 4.8 представлен фрагмент предметной базы данных «Сбыт» и одно из возможных его концептуальных представлений, которое отражает не только объекты и их свойства, но и взаимосвязи между ними.
Логический уровень является обобщенным представлением данных всех пользователей в абстрактной форме. Используются три вида моделей: иерархические, сетевые и реляционные.
Сетевая модель является моделью объектов-связей, допускающей только бинарные связи «многие к одному» и использует для описания модель ориентированных графов.
Иерархическая модель является разновидностью сетевой, являющейся совокупностью деревьев (лесом).
Реляционная модель использует представление данных в виде таблиц (реляций), в ее основе лежит математическое понятие теоретико-множественного отношения, она базируется на реляционной алгебре и теории отношений.
Физический (внутренний) уровень связан со способом фактического хранения данных в физической памяти ЭВМ. Во многом определяется конкретным методом управления. Основными компонентами физического уровня являются хранимые записи, объединяемые в блоки; указатели, необходимые для поиска данных; данные переполнения; промежутки между блоками; служебная информация.
По наиболее характерным признакам БД можно классифицировать следующим образом:
по способу хранения информации:
• интегрированные;
• распределенные;
по типу пользователя:
• монопользовательские;
• многопользовательские;
по характеру использования данных:
• прикладные;
• предметные.
В настоящее время при проектировании БД используют два подхода. Первый из них основан на стабильности данных, что обеспечивает наибольшую гибкость и адаптируемость к используемым приложениям. Применение такого подхода целесообразно в тех случаях, когда не предъявляются жесткие требования к эффективности функционирования (объему памяти и продолжительности поиска), существует большое число разнообразных задач с изменяемыми и непредсказуемыми запросами.
Второй подход базируется на стабильности процедур запросов к БД и является предпочтительным при жестких требованиях к эффективности функционирования, особенно это касается быстродействия.
Другим важным аспектом проектирования БД является проблема интеграции и распределения данных. Господствовавшая до недавнего времени концепция интеграции данных при резком увеличении их объема, оказалась несостоятельной. Этот факт, а также увеличение объемов памяти внешних запоминающих устройств при их удешевлении, широкое внедрение сетей передачи данных способствовало внедрению распределенных БД. Распределение данных по месту их использования может осуществляться различными способами:
1. Копируемые данные. Одинаковые копии данных хранятся в различных местах использования, так как это дешевле передачи данных. Модификация данных контролируется централизованно;
2. Подмножество данных. Группы данных, совместимые с исходной базой данных, хранятся отдельно для местной обработки;
3. Реорганизованные данные. Данные в системе интегрируются при передаче на более высокий уровень;
4. Секционированные данные. На различных объектах используются одинаковые структуры, но хранятся разные данные;
5. Данные с отдельной подсхемой. На различных объектах используются различные структуры данных, объединяемые в интегрированную систему;
6. Несовместимые данные. Независимые базы данных, спроектированные без координации, требующие объединения.
Важное влияние на процесс создания БД оказывает внутреннее содержание информации. Существует два направления:
• прикладные БД, ориентированные на конкретные приложения, например, может быть создана БД для учета и контроля поступления материалов;
• предметные БД, ориентированные на конкретный класс данных, например, предметная БД «Материалы», которая может быть использована для различных приложений.
Конкретная реализация системы баз данных с одной стороны определяется спецификой данных предметной области, отраженной в концептуальной модели, а с другой стороны типом конкретной СУБД (МБД), устанавливающей логическую и физическую организацию.
Для работы с БД используется специальный обобщенный инструментарий в виде СУБД (МБД), предназначенный для управления БД и обеспечения интерфейса пользователя.
Основные стандарты СУБД:
• независимость данных на концептуальном, логическом, физическом уровнях;
• универсальность (по отношению к концептуальному и логическому уровням, типу ЭВМ);
• совместимость, неизбыточность;
• безопасность и целостность данных;
• актуальность и управляемость.
Существуют два основных направления реализации СУБД: программное и аппаратное.
Программная реализация (в дальнейшем СУБД) представляет собой набор программных модулей, работает под управлением конкретной ОС и выполняет следующие функции:
• описание данных на концептуальном и логическом уровнях;
• загрузку данных;
• хранение данных;
• поиск и ответ на запрос (транзакцию);
• внесение изменений;
• обеспечение безопасности и целостности.
Обеспечивает пользователя следующими языковыми средствами:
• языком описания данных (ЯОД);
• языком манипулирования данными (ЯМД);
• прикладным (встроенным) языком данных (ПЯД, ВЯД).
Аппаратная реализация предусматривает использование так называемых машин баз данных (МБД). Их появление вызвано возросшими объемами информации и требованиями к скорости доступа. Слово «машина» в термине МБД означает вспомогательный периферийный процессор. Термин «компьютер БД» — автономный процессор баз данных ил<