Информационно-технологическая структура полнотекстовых ИС

Процессы компьютеризации деятельности предприятии привели к накоплению большого объема неструктурированной текстовой ин­формации. Возникла потребность в программном обеспечении, реали­зующем эффективный поиск информации.

Информационно-поисковые каталоги, фасетные и тезаурусные си­стемы не могли быть в ПОЛНОЙ мере использованы в массовой персо­нальной автоматизации. Потребовались средства, которые бы в Мак­симальной степени освобождали пользователя от необходимости сложной предварительной структуризации предметной области и за­тратных процедур индексирования при накоплении текстовых данных, но в то же время создавали бы эффективный и интуитивно понятный поисковый инструментарий [14]. В результате на рынке программных продуктов появились полнотекстовые ИС.

Полнотекстовые ПС строятся на основе информационно-поиско­вых языков дескрипторного типа. Информационно-технологическая структура полнотекстовых ИС включает [14]:

♦ хранилище документов;

♦ глобальный словарь системы;

♦ инвертированный индекс документов;

♦ интерфейс ввода документов в систему;

♦ механизм индексирования;

♦ интерфейс запросов пользователя;

♦ механизм поиска документов;

♦ механизм извлечения найденных документов.

Хранилище документов может быть организовано как единая ло­кально сосредоточенная информационная структура в виде специаль­ного файла с текстами документов.

Глобальный словарь системы может быть статическим и динами­ческим.

Статические словари определяются заранее и не зависят от содер­жания документов, вошедших в хранилище.

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

менты глобального словаря выступают в качестве дескрипторов

ИПЯ-системы. Поступающие через интерфейс ввода-вывода докумен­ты подвергаются операции индексирования по глобальному словарю. Механизм индексирования в полнотекстовых ИС полностью автома­тизирован и заключается в создании специального двоичного вектора, компоненты которого показывают наличие или отсутствие в данном документе слова с соответствующим номером из глобального слова­ря [14].

Существенное влияние на эффективность полнотекстовых ИС ока­зывает морфологический разбор при индексировании документов и запросов. Морфологический разбор позволяет выделять общую для однокоренных слов словоформу, а также выделять лексемы, т. е. сло­ва, отличающиеся окончаниями, приставками и суффиксами.

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

строится по инвертированной схеме и в двоичном виде отражает весь

(полный) текст учтенных или накопленных документов [14].

При удалении документа из системы соответственно удаляется и поисковый образ документа.

Через интерфейс запросов пользователь в терминах ИПЯ делает запрос, который обрабатывается поисковой машиной. Механизм по­иска основывается на тех или иных алгоритмах и критериях сравне­ния поискового образа запроса с ПОИСКОВЫМИ образами документов, образующими индекс системы. Результатом поиска является опреде­ление номеров документов, поисковые образы которых соответствуют поисковому образу запроса. Далее специальная подсистема па основе установленных в хранилище указательных конструкций извлекает и доставляет соответствующие документы пользователю [14].

Примером полнотекстовых информационно-поисковых систем яв­ляются автоматизированные информационные системы по законода­тельству.

Автоматизированная информационная система по законодатель­ству (АИСЗ) — это программный комплекс, включающий в себя мас­сив правовой информации и инструменты для работы с ним [37]. Эти инструменты позволяют производить поиск документов, формировать подборки документов, печатать документы.

АИСЗ являются частью следующих типов информационных систем [37].

1. Справочно-информационные системы общего назначения, ориентированные на доступ пользователей к нормативно-правовым

гам. К этим системам относятся «Консультант Плюс», «Га­рант», «Кодекс» и др.

2. Глобальные информационные службы (хост-системы), предо-

ставляющие доступ удаленным пользователям к библиографи­ческой, полнотекстовой или другой информации. Крупнейшей в мире коммерческой службой, обеспечивающей доступ к юриди­ческой информации, является система LEXIS (США).

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

1. Системы автоматизации делопроизводства судов, милиции и дру­гих правоохранительных органов. Основными особенностями АИСЗ являются [37]:

♦ необходимость предоставления адресного доступа к полным тек­стам;

♦ в информационных языках для поиска в БД по законодательству необходим учет контекстных связей, регламентированных при-

лагательных (типа «обязательный», «произвольный» и др.);

♦ тексты нормативных актов должны подвергаться так называемой
юридической обработке, при которой тексту приписываются не
только классификационные индексы, ключевые слова или де­скрипторы (как при обычном индексировании), но и комментарии специалистов, ссылки на предшествующие версии, связан­ные документы, решения судов и др.

В 1992 году образовалось НПП «Гарант-Сервис». В этом же году была создана общероссийская сеть «Консультант Плюс», которая охва­тила множество ГОРОДОВ России. В настоящее время наиболее распро­странена АИСЗ «Консультант Плюс». Система «Гарант» занимает второе место в России по количеству пользователей.

На третьем месте находится достаточно популярный продукт — информационно поисковая система «Кодекс», которая разработана малым государственным предприятием «Центр компьютерных разра­боток».

На российском рынке АИСЗ представлены также следующие про-

дукты, созданные государственными предприятиями для обеспечения потребностей в правовой информации государственных ведомств [52]:

♦ «Эталон» (НЦПИ при Министерстве юстиции РФ);

♦ «Система- (НТЦ «Система - при ФАПСИ).

Кроме того, на российском рынке представлены такие системы, как [52]:

♦ «ЮСИС» (фирма «Инталекс»);

♦ «Референт» (ЗАО «Референт-Сервис»);

♦ «Ваше право» и «Юрисконсульт» (фирма «Информационные системы и технологии»);

♦ «1С: Кодекс», «1С: Гарант». «1С: Эталон» (компания «1С»). Информационные банки РФ включают следующие уровни данных:

♦ федеральное законодательство;

♦ местное законодательство;

♦ ненормативные материалы (консультации экспертов, бланки де­ловых документов, проспекты эмиссии пенных бумаг коммерческих банков и т. п.).

При юридической обработке (индексировании) используется Об­щеправовой классификатор отраслей законодательства, утвержден­ный указом президента РФ № 2171 от 16 декабря 1993 года [37],

Существуют два источника получения правовой информации раз­работчиком для включения в систему: официальная рассылка подпи­савшего ведомства и опубликование в периодической печати.

Официальная рассылка — основной источник информации для си­стем «Консультант Плюс". «Гарант» и «Кодекс». Следует заметить, что государственные органы выступают не только в качестве источни­ков информации, НО И сами ЯВЛЯЮТСЯ пользователями систем, т. е. пря­мо заинтересованы в оперативном и достоверном пополнении инфор­мационного банка. Поэтому, как правило, документы передаются из органов государственной власти сразу же после их подписания.

Сеть «Консультант Плюс» имеет прямые договоры об обмене ин­формацией с ОСНОВНЫМИ федеральными органами (среди них— Ад

министрация Президента РФ, Министерство финансов РФ, Цен­тральный банк РФ, Федеральная налоговая служба и др.), а гаю местными органами власти. Благодаря аналогичным договорам, нор­мативные акты достаточно оперативно попадают и в систему «Гарант» [37,52].

Юридическая база < Кодекс» ведется при содействии юридического комитета мэрии Санкт Петербурга. Документы для данной системы поступают в «Центр компьютерных разработок" на основе договоров

не напрямую с органами власти, а с их представительствами в Санкт-Петербурге [37, 52].

Публикации в печатных изданиях. Выделяют три группы таких ис­точников. К первой относятся все издания, в которых публикация нормативных актов считается официальной: «Бюллетень междуна­родных договоров», < Вестник ЦБРФ», «Российская газета», <• Россий­ские вести» и др. Вторую группу составляют издания, не признанные официальными, но в состав учредителей которых входят российские министерства и ведомства: «Бюллетень Верховного суда РФ», «Фи­нансовая газета» и т. д. Наконец, в третью Группу входят издания, пуб­ликация документов в которых считается достоверной. Такие издания или имеют достаточно большой тираж, или пользуются авторитетом вереде специалистов: «Закон», «Хозяйство и право», «Экономика и жизнь» и др. [37J.

Основными параметрами, позволяющими определить качество со­держания информационной базы, являются [52]:

♦ полнота информации;

♦ достоверность информации;

♦ оперативность обновления информации.

Параметры, характеризующие качество программной оболочки:

♦ поисковые ВОЗМОЖНОСТИ системы:

♦ средства актуализации информации;

♦ дополнительные сервисные функции.

Оценка полноты, достоверности и оперативности обновления ин­формации основывается на количественных показателях. Оценка же качества юридической обработки поступающих в информационный банк документов достаточно субъективна.

Без юридической обработки АИСЗ является всего лишь электронным аналогом бумажных изданий. Еe цель систематизация документов для повышения эффективности их дальнейшего использования. Юриди­ческая обработка обычно состоит из следующих основных этапов [52]:

♦ Классификация документов;

♦ выявление взаимосвязей между различными документами;

♦ составление Примечаний к документу.

Классификация документов предназначена для последующего их поиска по некоторым признакам, формальным или неформальным. Классификация производится на основании классификатора данной системы. Как известно, классификатор — это иерархическая структу­ра, содержащая все понятия, используемые для описания документов, ВХОДЯЩИХ в информационную базу.

Доступ пользователя к информации, хранящейся в АИСЗ, может осуществляться двумя способами, каждый на которых имеет свои до­стоинства и недостатки [37]:

♦ работа с удаленной базой;

♦ работа с локальной базой.

При работе с удаленной базой пользователю нет необходимости хранить на своем компьютере данные системы, они хранятся на серве­ре разработчика и доступны через сеть. Большинство АИСЗ имеют версии, доступные через глобальную сеть Интернет. Основное пре­имущество работы с такими версиями заключается в том, что пользо­ватель всегда имеет доступ к самым последним данным [37].

Однако для работы с удаленной базой пользователю необходим доступ к Интернету. Зачастую скорость передачи информации через Интернет низкая из-за плохого качества каналов, а стоимость доступа достаточно высокая. Поэтому иногда более выгоден вариант работы с локальной базой, которая доступна в любой момент. Недостатком это­го варианта по сравнению с предыдущим является более продолжи­тельный период актуализации информации.

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

База данных (БД) представляет собой совокупность структуриро­ванных данных, хранимых в памяти вычислительной системы и ото­бражающих состояние объектов и их взаимосвязей в рассматриваемой предметной области [49].

Логическую структуру данных, хранимых в базе, называют мо­делью представления данных. К основным моделям представления данных (моделям данных) ОТНОСЯТСЯ иерархическая, сетевая, ре ционная.

Система управления базами данных (СУБД) это комплекс языко­вых и программных средств, предназначенный для создания, ведения и совместного использования БД многими пользователями. Обычно СУБД различают по используемой модели данных. Так, СУБД, осно­ванные на использовании реляционной модели данных, называют ре­ляционными СУБД.

Выделяют следующие виды СУБД [49]:

♦ полнофункциональные СУБД;

♦ серверы БД;

♦ средства разработки программ работы с БД.

Полнофункциональные СУБД представляют собой традиционные СУБД. К ним относятся dBase IV, Microsoft Access, Microsoft FoxPro и др. [49].

Серверы БД предназначены для организации центров обработки данных в сетях ЭВМ. Серверы БД обеспечивают обработку запросов клиентских программ обычно с помощью операторов SQL. Примера­ми серверов БД являются: Microsoft SQL Server, InterBase и др. [49].

В роли клиентских программ в общем случае могут использоваться СУБД, электронные таблицы, текстовые процессоры, программы элек­тронной почты и др.

Средства разработки программ работы с БД могут использоваться для создания следующих программ [49]:

♦ клиентских программ;

♦ серверов БД и их отдельных компонентов;

♦ пользовательских приложений.

По характеру использования СУБД делят на многопользователь­ские (промышленные) и локальные (персональные).

Промышленные СУБД представляют собой программную основу для разработки автоматизированных систем управления крупными экономическими объектами. Промышленные СУБД должны удовле­творять следующим требованиям [14]:

♦ возможность организации совместной параллельной работы мно­гих пользователей;

♦ масштабируемость;

♦ переносимость на различные аппаратные и программные плат­формы;

♦ УСТОЙЧИВОСТЬ ПО отношению к сбоям различного рода, В ТОМ чис­ле наличие многоуровневой системы резервирования хранимой

информации;

♦ обеспечение безопасности хранимых данных и развитой структурированной системы доступа к ним.

Персональные СУБД это программное обеспечение, ориентиро­ванное на решение задач локального пользователя или небольшой группы пользователей и предназначенное для использования на пер­сональном компьютере, Это объясняет и их второе название - на­стольные. Определяющими характеристиками настольных систем яв­ляются;

♦ относительная простота эксплуатации, позволяющая создавать на их основе работоспособные пользовательские приложения;

♦ относительно ограниченные требования к аппаратным ресурсам.

По используемой модели данных СУ БД разделяют на иерархические,

сетевые, реляционные, объектно-ориентированные и др.

СУБД реализует следующие основные функции низкого уровня [49]:

♦ управление данными во внешней памяти;

♦ управление буферами оперативной памяти;

♦ управление транзакциями;

♦ ведение журнала изменений в БД;

♦ обеспечение целостности и безопасности БД.

Механизм транзакций используется в СУБД для поддержания це­лостности данных в базе. Транзакцией называется некоторая недели­мая последовательность операций над данными БД, которая отсле­живается СУБД от начала и до завершения. Если по каким-либо причинам (сбои и отказы оборудования, ошибки в программном обес­печении, включая приложение) транзакция остается незавершенной, то она отменяется.

Транзакции присуши три основных свойства [14, 49]:

♦ атомарность (выполняются все входящие в транзакцию операции или пи одна);

♦ сериализуемость (отсутствует взаимное влияние выполняемых в одно и то же время транзакций);

♦ долговечность (даже крах системы не приводит к утрате резуль­татов зафиксированной транзакции).

Модели организации данных. Понятие реляционной БД. Основные понятия и принципы реляционной модели.

В иерархической модели объекты-сущности и отношения предмет­ной области представляются наборами данных, которые имеют древо­видную (иерархическую) структуру. Иерархическая модель данных была исторически первой. На ее основе в конце 60-х - начале 70-х го­дов были разработаны первые профессиональные СУБД.

Пример структуры иерархической БД приведен на рис. 5.1 [14].

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

Сетевая модель данных позволяет отображать разнообразные вза­имосвязи элементов данных в виде произвольного графа. Сетевая БД СОСТОИТ из набора записей и набора соответствующих связей. На фор­мирование связи особых ограничений не накладывается. Если в иерар­хических структурах запись-потомок могла иметь только одну запись-предка, то в сетевой модели данных запись-потомок может иметь произвольное число записей-предков.

. Достоинством сетевой модели данных является возможность ее эффективной реализации. В сравнении с иерархической моделью се­тевая модель предоставляет большие возможности в смысле допусти­мости образования произвольных связей.

Недостатком сетевой модели данных является высокая сложность и жесткость схемы БД, построенной на ее основе, а также СЛОЖНОСТЬ ее понимания обычным пользователем. Кроме ТОГО, в сетевой модели данных ослаблен контроль целостности связей из-за допустимости установления произвольных связей между записями.

Системы на основе сетевой модели не получили широкого распро­странения на практике.

Реляционная модель данных предложена сотрудником фирмы IBM Эдгаром Коддом и основывается на понятии отношения (relation).

Отношение представляет собой множество элементов, называемых кортежами. Наглядной формой представления отношения является двумерная таблица.

С помощью одной таблицы удобно описывать простейший вид свя­зей между данными, а именно: деление одного объекта, информация о котором хранится в таблице, на множество подобъектов, каждому из которых соответствует строка или запись таблицы,

ОСНОВНЫМИ недостатками реляционной модели ЯВЛЯЮТСЯ следу­ющие: отсутствие стандартных средств идентификации отдельных за­писей и сложность описания иерархических и сетевых связей.

Реляционная база данных представляет собой хранилище данных,

содержащее набор двухмерных таблиц. Данные в таблицах должны удовлетворять следующим принципам.

1. Значения атрибутов должны быть атомарными (иными слонами, каждое значение, содержащееся па пересечении строки и колонки, должно быть не расчленяемым на несколько значений).

2. Значения каждого атрибута должны принадлежать к одному и то­му же типу.

3. Каждая запись в таблице уникальна.
1. Каждое поле имеет уникальное имя.

5. Последовательность полей и записей в таблице несущественна

21. использование систем управления базами данных. СУБД MS Access и её возможности

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

Рассмотрим основные возможности СУБД MS Access, являющейся в настоящее время одной из самых популярных среди настольных си­стем. Среди причин такой популярности следует отметить [21, 52]:

♦ универсальный, продуманный интерфейс;

♦ интеграция с программными продуктами, входящими в состав Microsoft Office;

♦ богатый набор визуальных средств разработки.

Отправной точкой в процессе работы с любой СУБД является со­здание файла (или группы файлов) базы данных.

Типы объектов, которые может содержать база данных Access:

♦ таблицы;

♦ запросы;

♦ отчеты;

♦ макросы;

♦ модули.

Важным средством, облегчающим работу с Access для начинающих пользователей, являются мастера — специальные программные над­стройки, предназначенные для создания объектов базы данных в ре­жиме последовательного диалога для опытных пользователей суще­ствуют возможности более гибкой настройки объектов СУБД в режиме конструктора.

Перечислим основные этапы разработки базы данных в среде MS Access:

♦ разработка и описание структур таблиц данных;

♦ разработка схемы данных и создание взаимосвязей между табли­цами;

♦ разработка запросов к таблицам БД;

♦ разработка экранных форм ввода-вывода данных;

♦ разработка отчетов;

♦ разработка программных расширений для базы данных, реша­ющих специфические задачи по обработке содержащейся в ней информации с помощью инструментария макросов и модулей;

♦ разработка системы защиты данных, прав и ограничений доступа.

22.понятие распределённой БД. архитектура и принципы распределённой БД.

Распределенная база данных— это набор отношений, хранящихся в разных узлах компьютерной сети и логически связанных таким об­разом, чтобы составлять единую совокупность данных [14, 33].

Распределенная база данных предполагает хранение данных на не­скольких узлах сети, обработку данных и их передачу между этими

узлами в процессе выполнения запросов. Разбиение данных в распре­деленной базе данных может достигаться путем хранения различных таблиц на разных компьютерах или хранения разных фрагментов од­ной таблицы на разных компьютерах..

Впервые задача об исследовании основ и принципов создания и функ­ционирования распределенных информационных систем была поставлена известным специалистом в области баз данных К. Дейтом.

В основе распределенных ИС лежат две основные идеи [14]:

♦ работа множества пользователей с общей БД;

♦ объединение распределенных данных на логическом и физиче­ском уровнях в общей БД.

Перечислим основные принципы создания и функционирования распределенных БД [14):

♦ Прозрачность размещения данных для пользователя (пользова­телю распределенная БД должна представляться точно, так как и нераспределенная);

♦ изолированность пользователей друг от друга (на работу одного пользователя с БД не должна влиять работа других пользовате­лей с ней);

♦ синхронизация БД и непротиворечивость состояния данных в лю­бой момент времени.

Дадим более подробный перечень принципов распределенной БД, сформулированных К. Дейтом [33].

1. Локальная автономия. Это качество означает, что управление данными на каждом из узлов распределенной системы выполня­ется локально. База данных, расположенная па одном из узлов, является неотъемлемым компонентом распределенной системы. Будучи фрагментом общего пространства данных, она в то же время функционирует как полноценная локальная база данных, а управление ею осуществляется локально, независимо от других узлов системы.

2. Независимость узлов. Все узлы равноправны и независимы, а расположенные на них БД являются равноправными поставщи­ками данных в общее пространство данных. База данных на каж­дом из узлов самодостаточна — она включает полный собственный словарь данных и полностью защищена от несанкциониро­ванного доступа.

3. Непрерывность операций. Это возможность непрерывного до­ступа к данным в рамках распределенной БД вне зависимости от их расположения и вне зависимости от операций, выполняемых на локальных узлах.

4. Прозрачность расположения. Пользователь, обращающийся к БД, ничего не должен знать о реальном, физическом размещении дан­ных в узлах информационной системы.

5. Прозрачная фрагментация. Возможность распределенного (т. е. на различных узлах) размещения данных, логически представля­ющих собой единое целое. Существует фрагментация двух типов: горизонтальная и вертикальная. Первая означает, что строки таб­лицы хранятся на различных узлах. Вторая означает распределе­ние столбцов логической таблицы по нескольким узлам.

6. Прозрачное тиражирование. Тиражирование данных - это асин­хронный процесс переноса изменений объектов исходно!! базы данных в базы, расположенные на других узлах распределенной системы.

7. Обработка распределенных запросов. Возможность выполнения операций выборки данных из распределенной БД, посредством запросов, сформулированных на языке SQL.

8. Обработка распределенных транзакций. Возможность выполне­ния операций обновления распределенной базы данных, не нарушающих целостность и согласованность данных. Эта цель достигается применением двухфазного протокола фиксации транзакций.

9. Независимость от оборудования. Это свойство означает, что в ка­честве узлов распределенной системы могут выступать компью­теры любых моделей и производителей.

10. Независимость от операционных систем. Это качество вытекает из предыдущего и означает многообразие операционных систем, управляющих узлами распределенной системы.

11. Прозрачность сети. Доступ к любым базам данных осуществля­ется по сети. Спектр поддерживаемых конкретной СУБД сете­вых протоколов не должен быть ограничением системы, основан­ной на распределенной БД.

12. Независимость от СУБД. Это качество означает, что в распреде­ленной системе могут работать СУБД различных производителей, и возможны операции поиска и обновления в базах данных различных моделей и форматов.

Технология клиент-сервер

Выделились несколько самостоятельных технологий распределен­ной обработки данных [14]:

♦ клиент-сервер;

♦ реплицирования;

♦ объектного связывания.

Реальные распределенные информационные системы, как правило, построены на основе сочетания ЭТИХ технологий.

Системы на основе технологии клиент-сервер разнились из первых централизованных многопользовательских информационных систем на основе мэйнфреймов и получили наиболее широкое распростране­ние в корпоративных информационных системах.

При реализации данной технологии отступают от одного из основ­ных принципов создания распределенных систем — отсутствия цен­трального узла [14].

Принцип централизации хранения и обработки данных является базовым принципом технологии клиент-сервер.

Можно выделить следующие идеи, лежащие в основе технологии клиент-сервер [14]:

♦ общие для всех пользователей данные, расположенные на одном или нескольких серверах;

♦ множество пользователей, осуществляющих доступ к общим данным.

Важное значение в технологии клиент-сервер имеют понятия сер­вера и клиента.

Под сервером в широком смысле понимается любая система, про­цесс, компьютер, владеющие каким-либо вычислительным ресурсом (памятью, временем процессора, файлами и Т.Д.). Клиентом называ­ется любая система, процесс, компьютер, пользователь, делающие за­прос к серверу на использование ресурса [14].

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

Одним из важнейших преимуществ архитектуры клиент-сервер является снижение сетевого трафика при выполнении запросов. Клиент посылает запрос серверу на выборку данных, запрос обрабатывается сервером, и клиенту передастся не вся таблица (как было бы и техно­логии файл-сервер), а только результат обработки запроса.

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

Во многих случаях узким местом клиент-серверных ИС является недостаточно высокая производительность из-за необходимости пе­редачи по сети все-таки большого количества данных.

Построение быстродействующих информационных систем обеспе­чивают технологии репликации данных.

Репликой называют копию БД, размешенную на другом компьюте­ре сети для автономной работы пользователей. Основная идея репли­кации заключается в том, что пользователи работают автономно с об­щими данными, растиражированными по локальным базам данных. Производительность работы системы повышается из-за отсутствия необходимости обмена данными по сети. Для реализации технологии

репликации программное обеспечение СУБД дополняется функци­ями тиражирования данных, их структуры, системной информации, информации о конфигурировании распределенной системы [14].

При этом, однако, возникают две проблемы реализации одного из принципов функционирования распределенных систем принципа непрерывности согласованного состояния данных [14]:

♦ обеспечение согласованного состояния данных во всех репли­ках БД;

♦ обеспечение согласованного состояния структуры данных во всех репликах БД.

Обеспечение согласованного состояния данных, в свою очередь, ос­новывается на реализации одного из двух принципов [14]:

♦ принципа непрерывного размножения обновлений;

♦ принципа отложенных обновлений (обновления реплик могут быть отложены до специальной команды или ситуации).

Принцип непрерывного размножения обновлений является осно­вополагающим при построении так называемых «систем реального времени- (например, систем управления воздушным движением, сис­тем бронирования билетов пассажирского транспорта и др.), где тре­буется непрерывное и точное соответствие реплик во всех узлах и ком­понентах распределенных систем в любой момент времени. Реализация этого принципа заключается в том, что любая транзакция считается успешно завершенной, если она успешно завершена на всех репликах системы.

В ряде предметных областей режим реального времени с точки зре­ния непрерывности согласования данных не требуется. Такого рода информационные системы можно строить на основе принципа отло­женных обновлений. Накопленные в какой-либо реплике изменения данных передаются командой пользователя для обновления всех ос­тальных реплик системы. Такая операция называется синхронизацией реплик.

Унификация взаимодействия прикладных компонентов с ядром информационных систем в виде SQL-серверов, наработанная для кли-ент-серверных систем, позволила выработать аналогичные решения и по интегрированию разрозненных локальных баз данных под управ­лением настольных СУБД. Такая технология получила название объектного связывания данных [14].

Технология объектного связывания данных решает задачу обеспе­чения доступа из одной локальной БД, открытой одним пользователем, к данным другой локальной БД, возможно, находящейся на дру­гом компьютере, открытой другим пользователем. Решение ЭТОЙ задачи

основывается на поддержке современными настольными СУБД техно­логии объектом доступа к данным DAO (Data Access Objects). Под

объектом понимается интеграция данных и методов их обработки в одно целое, на чем, как известно, основываются технологии объектно-ориентированного программирования 114).

Технология объектного связывания данных основана на протоколе ODBC (Open Database Connectivity), который является стандартом тупа к данным БД клиент-серверных систем (посредством SQL-запросов), а также к любым данным, находящимся под управлением реляционных СУБД.

Подобный принцип построения распределенных систем при боль­ших объемах данных в связанных таблицах приводит к существенно­му увеличению сетевого трафика, так- как по сети постоянно пере­даются страницы файлов баз данных. Другой проблемой является отсутствие надежных механизмов безопасности данных и обеспечение ограничений целостности. Так же как и в технологии файл-сервер, сов­местная работа нескольких пользователей с одними и теми же данны­ми обеспечивается только функциями операционной системы по од­новременному доступу к файлу нескольких приложений [14].

Наши рекомендации