23.4. Определение фактографических систем

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

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

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

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

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

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

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

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

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

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

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

Мы будем рассматривать далее только СУБД общего назначения.