СУБД – специальный пакет программ, с помощью которого реализуется централизованное управление БД и обеспечивается доступ к данным.
Банк данных (БнД) – это автоматизированная информационная система, включающая в свой состав комплекс специальных методов и средств (математических, информационных, программных, языковых, организационных и технических) для поддержания динамической информационной модели предметной области для обеспечения информационных запросов пользователя
В этом определении, с одной стороны, подчеркивается, что банк данных является сложной системой, включающей в себя все обеспечивающие подсистемы, необходимые для функционирования любой системы автоматизированной обработки данных. С другой стороны, здесь также обозначены и основные отличительные особенности банков данных от иных типов информационных систем, например, реализующих позадачный подход к их созданию.
Нельзя сказать, что в рассматриваемой нами сфере установилось терминологическое единство. Так, в англоязычной литературе термин «банк данных» используется значительно реже, чем «система баз данных» (database system), который по своему содержанию близок к приведенному выше определению банка данных (система баз данных включает базу данных, систему управления базами данных, соответствующее оборудование и персонал)
Преимущества БнД.Особенности «банковской» организации данных обусловливают их основные преимущества перед «небанковской» организацией.
Наличие единого отображения определенной части реального мира позволяет обеспечить непротиворечивость и целостность информации, возможность обращаться к ней не только при решении заранее предопределенных задач, но и с нерегламентированными запросами. Интегрированное хранение сокращает избыточность хранимых данных, что приводит к сокращению затрат не только на создание и хранение данных, но и на поддержание их в актуальном состоянии.
Использование БнД при правильной его организации должно существенно изменить деятельность организации, где он внедряется, привести к обеспечению большей доступности данных для всех категорий сотрудников, сокращению документооборота, возможности получения разнообразных по форме и содержанию документов, перераспределению функций между сотрудниками и изменению характера выполняемых ими функций и, как следствие, улучшить всю систему управления предприятием.
Централизованное управление данными также дает целый ряд преимуществ. Использование СУБД обеспечивает высокое качество выполнения функций по управлению данными и облегчает процесс создания информационных систем (ИС).
Выделение специальной группы сотрудников, выполняющих функции по проектированию и развитию БнД (администраторов БД), и освобождение от этих функций всех остальных пользователей не только приводит к снижению требований к остальным участникам процесса создания и функционирования БнД, но и повышает качество разработок, так как вопросами организации данных занимается небольшое число профессионалов в этой области.
Преимуществом банков данных является также то, что они обеспечивают возможность более полной реализации принципа независимости прикладных программ от данных, чем это возможно при организации локальных файлов.
Недостатки БнД.Недостатки БнД вытекают из их достоинств. Создание интегрированной системы, естественно, сложнее, чем создание множества локальных систем. Как следствие, предъявляются высокие требования к квалификации разработчиков БнД. В результате интеграции возможна некоторая потеря эффективности отдельных приложений (но общая эффективность всей системы будет выше). Для управления данными требуется специализированное программное обеспечение, которое в зависимости от класса системы может быть сравнительно дорогим, предъявляющим повышенные требования к техническим средствам. Эксплуатация распределенных корпоративных БнД – процесс сложный и дорогостоящий.
Но, несмотря на некоторые недостатки, присущие такой форме организации данных, преимущества БнД значительно превосходят их. Кроме того, имеется очень широкий круг СУБД разных классов и технологий их использования. Правильный выбор системы позволит свести отрицательные последствия к минимуму.
Классификация БнД
По условиям предоставления услуг различают бесплатные и платные банки данных. Платные БнД, в свою очередь, делятся на бесприбыльные и коммерческие. Бесприбыльные банки данных функционируют на принципе самоокупаемости и не ставят своей целью получение прибыли. Это обычно БнД социально значимой информации, имеющей широкий круг пользователей, или научной, библиотечной информации. Основной целью создания коммерческих банков данных является получение прибыли от информационной деятельности.
Информационные системы различаются по характеру преобладающей обработки информации. Водних в основном реализуется большое число достаточно простых запросов. Такие системы получили название OLTP (On-Line Transaction Processing - системы оперативной обработки транзакций). В других, напротив, требуется сложная аналитическая обработка данных. Для такого класса систем стал использоваться термин OLAP (On-Line Analytical Processing).
По степени доступностиБнД делятся на общедоступные и с ограниченным кругом пользователей.
По охватуБД могут классифицироваться в разных разрезах:
· территориальный:
всемирный;
страна;
город;
· временной;
· ведомственный;
· проблемный (тематический).
Территориальный и ведомственный признаки классификации могут относиться не только к информации, хранящейся БД, но и к кругу обслуживаемых пользователей.
По характеру взаимодействия с пользователями(кто инициализирует действия) БнД делятся на активные и пассивные.
В пассивных БнД ведущая роль принадлежит пользователю, в активных - система может самостоятельно менять поведение. В последнее время термин «активная база данных» стал часто использоваться для систем, использующих триггеры.
По форме собственностиБнД делятся на государственные и негосударственные (частные, групповые, личные).
В литературе встречаются и другие аспекты классификации банков данных, но названные являются наиболее значимыми.
Основной компонент БнД – база данных
В архитектуре БД рассматривается 3 основных уровня: 1. внешний; 2. концептуальный; 3. внутренний.
(Схема – описание модели предметной области.) Данная схема представляет архитектуру БД и соответствует той архитектуре, которая была предложена американским национальным институтом стандартов (ANSI).
Любая прикладная программа составляется с использованием терминов моделей данных. СУБД, получив запрос от прикладной программы, организует запрос ОС-е на считывание из физической БД информации в свою буферную область памяти, т.е. в этой области оказываются данные соответствующие внутренней структуре. Затем происходит отображение хранимых записей в записи модели. Эти записи пересылаются в рабочую область программы. Описанная выше схема использует глобальное логическое представление содержимого БД, это не всегда удобно по следующим причинам: 1) каждый пользователь имеет отношение лишь к небольшой части данных; 2) представление каждого пользователя о логической организации может не соответствовать описанию в модели; 3) необходимость обеспечения защиты данных.
В связи с указанными причинами появляется необходимость ведения внешней схемы. На этапе концептуального моделирования определяется модель данных, которая должна иметь возможность эффективно реализовать концептуальную модель во внутреннюю.
В данной схеме представлено 2 уровня отображения:
1. Отображение «внешний концептуальный». Определяет соответствие между концептуальной и внешней моделями, причем количество внешних моделей не ограничено и несколько пользователей могут использовать одну внешнюю модель.
2. Отображение «концептуальный внутренний». Определяет соответствие между моделью данных и хранимой базой, т.е. оно показывает, как концептуальные записи и поля отображаются в их физические копии. Как бы не менялась структура хранимой БД, концептуальная схема изменятся не должна, изменяется только отображение.
Внешняя модель – представление конкретным пользователем своего сегмента БД (абстрактное отображение некоторой части концептуальной БД). Внешняя модель необходима для того, чтобы оградить пользователя от изучения полной схемы данных хранимых в базе
Классификация баз данных
Центральным компонентом банка данных является база данных, и большинство классификационных признаков относятся именно к ней. По форме представления информации различают визуальные и аудиосистемы, а также системы мультимедиа. Эта классификация показывает, в каком виде информация хранится в БД и выдается из баз данных пользователям - в виде изображения, звука или имеется возможность использования разных форм отображения информации. Понятие «изображение» здесь используется в широком смысле. Это может быть символьный текст, неподвижное графическое изображение (рисунки, чертежи и т.п.), фотографии, географические карты, движущиеся изображения. Классификация способов представления информации являет собой самостоятельную проблему и здесь не рассматривается.
По характеру организации данных БД могут быть разделены на неструктурированные, частично структурированные и структурированные. Этот классификационный признак относится к информации, представленной в символьном виде. К неструктурированным БД могут быть отнесены базы, организованные в виде семантических сетей. Частично структурированными можно считать базы данных в виде обычного текста или гипертекстовые системы. Структурированные БД требуют предварительного проектирования и описания структуры БД. Только после этого базы данных такого типа могут быть заполнены данными.
Структурированные БД, в свою очередь, по типу используемой модели делятся на иерархические, сетевые, реляционные, смешанные и мультимодельные.
Классификация по типу модели распространяется не только на базы данных, но и на СУБД.
В структурированных БД обычно различают несколько уровней информационных единиц (ИЕ), входящих одна в другую. Число этих уровней может быть различным даже для систем, относящихся к одному и тому же классу. Большинство структурированных систем поддерживают уровень поля, записи и файла. Эти информационные единицы могут называться в разных системах по-разному, но суть остается одной и той же, а именно: полю соответствует наименьшая семантическая единица информации; совокупность полей или иных, более сложных информационных единиц, если они допустимы в конкретной СУБД, образует запись, а множество однотипных записей представляет файл базы данных. В последнее время большинство СУБД в явном виде поддерживают и уровень базы данных как совокупности взаимосвязанных файлов БД.
По типу хранимой информации БД делятся на документальные, фактографические и лексикографические. Среди документальных баз различают библиографические, реферативные и полнотекстовые.
К лексикографическим базам данных относятся различные словари (классификаторы, многоязычные словари, словари основ слов и т. п.).
В системах фактографического типа в БД хранится информация об интересующих пользователя объектах предметной области в виде «фактов» (например, биографические данные о сотрудниках, данные о выпуске продукции производителями и т.п.); в ответ на запрос пользователя выдается требуемая информация об интересующем его объекте (объектах) или сообщение о том, что искомая информация отсутствует в БД.
В документальных БД единицей хранения является какой-либо документ (например, текст закона или статьи), и пользователю в ответ на его запрос выдается либо ссылка на документ, либо сам документ, в котором он может найти интересующую его информацию.
БД документального типа могут быть организованы по-разному: без хранения и с хранением самого исходного документа на машинных носителях. К системам первого типа можно отнести библиографические и реферативные БД, а также БД-указатели, отсылающие к источнику информации. Системы, в которых предусмотрено хранение полного текста документа, называются полнотекстовыми.
В системах документального типа целью поиска может быть не только какая-то информация, хранящаяся в документах, но и сами документы. Так, возможны запросы типа «сколько документов было создано за определенный период времени» и т. п. Часто в критерий поиска в качестве признаков включаются «дата принятия документа», «кем принят» идругие «выходные данные» документов.
Специфической разновидностью баз данных являются базы данных форм документов. Они обладают некоторыми чертами документальных систем (ищется документ, а не информация о конкретном объекте, форма документа имеет название, по которому обычно и осуществляется его поиск), и специфическими особенностями (документ ищется не с целью извлечь из него информацию, а с целью использовать его в качестве шаблона).
В последние годы активно развивается объектно-ориентированный подход к созданию информационных систем. Объектные базы данных организованы как объекты и ссылки к объектам. Объект представляет собой данные и правила, по которым осуществляются операции с этими данными. Объект включает метод, который является частью определения объекта и запоминается вместе с объектом. В объектных базах данных данные запоминаются как объекты, классифицированные по типам классов и организованные в иерархическое семейство классов. Класс - коллекция объектов с одинаковыми свойствами. Объекты принадлежат классу. Классы организованы в иерархии.
Похарактеру организации хранения данных и обращения к ним различают локальные (персональные), общие (интегрированные, централизованные) и распределенные базы данных
Персональная база данных - это база данных, предназначенная для локального использования одним пользователем. Локальные БД могут создаваться каждым пользователем самостоятельно, а могут извлекаться из общей БД.
Интегрированные и распределенные БД предполагают возможность одновременного обращения нескольких пользователей к одной и той же информации (многопользовательский, параллельный режим доступа). Это привносит специфические проблемы при их проектировании и в процессе эксплуатации БнД. Распределенные БД, кроме того, имеют характерные особенности, связанные с тем, что физически разные части БД могут быть расположены на разных ЭВМ, а логически, с точки зрения пользователя, они должны представлять собой единое целое.
Технологии, которые, на первый взгляд, вроде бы находятся на разных концах спектра (локальная и распределенная обработка), на самом деле очень близки и различаются практически тем, как поддерживается связь между отдельными частями БД. В локальных системах поддержание этой связи не является централизованным, а в распределенных БнД связь должна поддерживаться СУБД. Совмещать идеи локальной работы и централизованного поддержания единой БД позволяет технология тиражирования, при которой средства СУБД обеспечивают тиражирование отдельных частей общей БД, локальное использование их, а затем согласование отдельных фрагментов БД в рамках единой базы данных.
Концепции централизованной и распределенной обработки данных гоже не так сильно различаются между собой, как кажется на первый взгляд. Так называемые клиент-серверные системы с тонким клиентом очень близки к централизованным базам данных.
Банк данных является сложной человеко-машинной системой, и распределяться по узлам сети могут не только БД, но и другие компоненты БнД. Причем сама БД при этом может быть и нераспределенной (например, при обеспечении многопользовательского доступа к централизованной БД в сети). Поэтому будем различать два понятия: распределенные БД и распределенные БнД. При этом под распределенным БнДбудем понимать банк данных, в котором распределен хотя бы один его компонент.
БД классифицируются по объему. Особое место здесь занимают так называемые очень большие базы данных. Это вызвано тем, что для больших баз данных по-иному ставятся вопросы обеспечения эффективности хранения информации и обеспечения ее обработки.
Жизненный цикл БД
СУБД
Основу программного обеспечения БнД составляют программные компоненты СУБД. Среди них можно выделить ядро СУБД, обеспечивающее создание БД, организацию ввода, обработки и хранения данных, т.е. именно то, что называется «управлением данными», а также другие компоненты, обеспечивающие настройку системы, средства тестирования, утилиты, обеспечивающие выполнение вспомогательных функций, таких, как восстановление баз данных, сбор статистики о функционировании БнД и др. Важным компонентом СУБД являются трансляторы или компиляторы для используемых ею языковых средств.
СУБД – специальный пакет программ, с помощью которого реализуется централизованное управление БД и обеспечивается доступ к данным.
В состав большинства СУБД включены программные компоненты, позволяющие автоматизировать проектирование систем обработки информации (генераторы отчетов, меню и др.). Строго говоря, эти функции не являются непосредственно функциями по управлению данными, но большинство современных программных средств, которые продолжают называться СУБД, выходят за названные рамки и фактически являются мощными комплексными инструментальными средствами, позволяющими автоматизировать процесс создания информационных систем.
Можно выделить две концепции развития языковых средств: концепцию разделения и концепцию интеграции. При использовании концепции разделения различают языки описания данных (ЯОД) и языки манипулирования данными (ЯМД). Назначение каждого из этих подклассов ясно из их названия.
Иногда в особую группу выделяют языки запросов (ЯЗ). Первоначально под языками запросов понимали языки высокого уровня, ориентированные на конечного пользователя, предназначенные для формирования запросов к БД (в такой трактовке их можно считать одной из разновидностей ЯМД). Однако сейчас ЯЗ понимается шире (см. главу 3); многие ЯЗ включают в себя еще и возможности описания данных и корректировки БД.
В составе языков описания данныхв зависимости от особенностей СУБД поддерживаются все или некоторые из следующих языков: язык описания схем (ЯОС), язык описания подсхем (ЯОПС), язык описания хранимых данных (ЯОХД), языки описания внешних данных (входных, выходных). В некоторых СУБД и сами эти разновидности языков, и создаваемые с их помощью элементы ИС являются самостоятельными компонентами, в других - некоторые из них могут быть объединены.
Языки манипулирования даннымиразделяются на две большие группы: процедурные и непроцедурные (декларативные). При пользовании процедурными языками надо указать, какие действия и над какими объектами необходимо выполнить, чтобы получить результат. В непроцедурных языках указывается, что надо получить в ответе, а не как этого достичь.
Процедурные языки могут различаться по основным информационным единицам, которыми они манипулируют. Это могут быть языки, ориентированные на позаписную обработку данных, и языки, ориентированные на операции над множеством записей. Так, операции реляционной алгебры оперируют целиком отношением, а не каждой его записью. Примерами непроцедурных языков являются языки, основанные на реляционном исчислении. К таким языкам относится широко используемый язык запросов SQL. Табличный язык QBE также является непроцедурным языком.
Языковые средства предназначаются для пользователей разных категорий: конечных пользователей, системных аналитиков, профессиональных программистов. Повышение уровня языковых средств, их дружелюбности приводит к тому, что все большее число функций выполняется пользователями-непрограммистами самостоятельно, без посредников.
По функциональным возможностям выделяют следующие категории языков [44].
1. Языки, имеющие только возможности запросов. Они обеспечивают вывод требуемых данных на экран или печать в нужном формате. В настоящее время используются редко.
2. Комплексные языки запросов/обновлений. Это более развитые языки; они позволяют формулировать сложные запросы, относящиеся к нескольким взаимосвязанным записям, и обновлять данные так же легко, как и формулировать запросы. Используя их, пользователи могут создавать свои собственные файлы.
3. Генераторы отчетов. Они дают возможность выбирать нужные данные из файлов или баз данных и форматировать их в виде требуемых форм документов.
4. Графические языки. Использование графических средств в настоящее время постоянно расширяется. С их помощью можно выводить данные в виде различных графиков и диаграмм, а также использовать другие изобразительные возможности. Как и генераторы отчетов, графические языки позволяют осуществлять отбор информации из файлов или баз данных по различным критериям, а также выполнять арифметические и логические манипуляции с данными.
5. Инструментальные средства поддержки решений. Языки этого типа предназначены для создания систем принятия решений. Это могут быть системы типа «что-если», системы, выполняющие временной или трендовый анализ, и др. Возможно использование как универсальных, так и проблемно-ориентированных средств.
6. Генераторы приложений. Обеспечивают возможность описания непроцедурным путем требуемой обработки информации и дальнейшей автоматической генерации программ.
7. Машинно-ориентированные языки спецификаций. Фактически являются генераторами приложений, дальнейшим их развитием. В отличие от генераторов приложений языки спецификаций более универсальны и позволяют специфицировать приложения разных типов.
8. Языки очень высокого уровня. В большинстве случаев приложения строятся с помощью непроцедурных языков. Однако некоторые языки являются процедурными (например, NOMAD), но программирование на них значительно короче, чем, например, на Cobol.
9. Параметризированные пакеты прикладных программ (ППП). Эта категория программных средств известна давно, и «4-е поколение» относится к таким ППП, которые допускают легкую модификацию самого пакета, позволяют пользователям генерировать собственные отчеты, запросы к базе данных и т.д.
10. Языки приложений. Многие языки 4-го поколения являются универсальными, другие - спроектированы для специфических приложений. Примерами таких языков являются языки для управления финансами, управления работой станков с программным управлением и т.д.
По форме представления различают аналитические, табличные и графические языковые средства. Классификация языковых средств по этому признаку относится как к языкам описания данных, так и к языкам манипулирования данными. Так, описание таблицы с использованием команды CREATE TABLE языка SQL (см. главу 7) является примером аналитической формы ЯОД, а описание такой же таблицы в Access (см. главу 5) и большинстве других настольных СУБД - примером табличной формы описания данных. В качестве примеров табличной и аналитической форм задания запросов можно привести языки QBE (см. главу 6) и SQL (см. главу 7) соответственно.
Достаточно часто бывает, что в рамках одной СУБД для одних и тех же целей могут использоваться языки разных типов. Так, например, во многих СУБД (dBase, FoxPro и др.) для манипулирования данными могут использоваться:
· табличный язык запросов типа QBE;
· язык SQL - аналитический язык запросов, относящийся к классу языков исчисления кортежей;
· процедурный язык программирования (для указанных выше систем dBase, FoxPro — это язык xBase, часть операторов которого реализует операции реляционной алгебры, а другая часть, более значительная по количеству операторов и функций, выполняет нереляционные операции, обеспечивающие позаписную обработку файлов, организацию циклической и условной обработки, ввод-вывод данных, корректировку, возможность работы с переменными памяти и другие возможности).
Описание данных в этих системах может быть представлено в табличном виде либо, если определение данных выполняется средствами SQL или с использованием операторов языка xBase, в аналитическом виде.
Кроме упомянутых языковых средств эти системы включают в себя генераторы экранных форм, отчетов и приложений, а также язык разветвленной иерархической системы «меню», позволяющей пользователю выбрать те действия, которые он желает выполнить.
Часто СУБД обеспечивают автоматическое преобразование «текстов» с одного языка на другой. Так, например, многие СУБД, такие, как Access, FoxPro и др., используют языки запросов табличного типа не только для непосредственной реализации запросов, но и как средство для более простого описания запроса и последующего автоматического преобразования его на язык SQL.
Классификации СУБД
Рассмотрим теперь ряд классификационных признаков, относящихся к СУБД. По языкам общения СУБД делятся на открытые, замкнутые и смешанные. Открытые системы - это системы, в которых для обращения к базам данных используются универсальные языки программирования. Замкнутые системы имеют собственные языки общения с пользователями БнД.
По числу уровнейв архитектуре различают одноуровневые, двухуровневые, трехуровневые системы. В принципе возможно выделение и большего числа уровней. Под архитектурным уровнем СУБД понимают функциональный компонент, механизмы которого служат для поддержки некоторого уровня абстракции данных (логический и физический уровень, а также «взгляд» пользователя - внешний уровень).
По выполняемым функциямСУБД делятся на информационные и операционные. Информационные СУБД позволяют организовать хранение информации и доступ к ней. Для выполнения более сложной обработки необходимо писать специальные программы. Операционные СУБД выполняют достаточно сложную обработку, например, автоматически позволяют получать агрегированные показатели, не хранящиеся непосредственно в базе данных, могут изменять алгоритмы обработки и т.д.
По сфере возможного примененияразличают универсальные и специализированные, обычно проблемно-ориентированные СУБД.
Системы управления базами данных поддерживают разные типы данных. Набор типов данных, допустимых в разных СУБД, различен. Кроме того, ряд СУБД позволяет разработчику добавлять новые типы данных и новые операции над этими данными. Такие системы называются расширяемыми системами баз данных (РСБД).
Дальнейшим развитием концепции РСБД являются системы объектно-ориентированных баз данных (СООБД), обладающие достаточно мощными выразительными возможностями, чтобы непосредственно моделировать сложные объекты.
По мощностиСУБД делятся на настольные и корпоративные. Характерными чертами настольных СУБД являются сравнительно невысокие требования к техническим средствам, ориентация на конечного пользователя, низкая стоимость.
Корпоративные СУБД обеспечивают работу в распределенной среде, высокую производительность, поддержку коллективной работы при проектировании систем, имеют развитые средства администрирования и более широкие возможности поддержания целостности. Эти системы сложны, дороги, требуют значительных вычислительных ресурсов.
Наиболее известными из корпоративных СУБД являются Oracle, DB2, Sybase, MS SQL Server, Progress и некоторые другие.
По ориентации на преобладающую категорию пользователейможно выделить СУБД для разработчиков и для конечных пользователей. Системы, относящиеся к первому классу, должны иметь качественные компиляторы и позволять создавать «отчуждаемые» программные продукты, обладать развитыми средствами отладки, включать средства документирования проекта и другие возможности, позволяющие строить эффективные сложные системы. Основными требованиями, предъявляемыми к системам, ориентированным на конечного пользователя, являются: удобство интерфейса, высокий уровень языковых средств, наличие интеллектуальных модулей подсказок, повышенная защита от непреднамеренных ошибок («защита от дурака») и т.п.
Существует разделение СУБД по поколениям. К первому поколению СУБД относят системы, основанные на иерархической и сетевой моделях (60-70-е гг. XX в.), ко второму поколению - реляционные системы. СУБД третьего поколения, требования к которым были сформулированы в «Манифесте систем баз данных третьего поколения» [38], должны поддерживать сложные структуры данных и более развитые средства обеспечения целостности данных, отвечать требованиям, предъявляемым к открытым системам.
Тенденции развития СУБД
Рынок СУБД бурно развивается, достаточно широк и разнообразен. Тем не менее, можно выделить некоторые основные тенденции, присущие этому классу программных продуктов.
1. Поддержка разных стилей проектирования (традиционный, объектно-ориентированный, «визуальное» проектирование).
Использование визуальных объектно-ориентированных средств разработки является преобладающей тенденцией.
2. Использование мультимедийных систем. Обработка графических образов. Управление пространственной информацией.
3. Повышение уровня языковых средств. Дружелюбность.
4. Включение в СУБД разнообразных языковых средств, ориентированных на разные категории пользователей.
5. Поддержка решений для реализации хранилищ данных в целях обеспечения процессов принятия решений.
6. Наличие разнообразных сервисных средств (развитая «помощь»: контекстная помощь (Help), электронные учебники, примеры, шаблоны распространенных приложений, «Волшебники» и т.п.).
7. Расширение функциональных возможностей (многофункциональность). Причем расширяется набор, и улучшаются характеристики не только функций, присущих собственно СУБД, но и существенно развиваются возможности получения выходных документов различных видов, функции редакторов (в том числе проверка орфографии и т.п.), передача документов по ЭП, документирование проекта и некоторые другие функции, которые не являются функциями по управлению данными.
8. Многоплатформенность - наличие вариантов «одноименных» СУБД, реализованных для разных операционных систем и разных типов компьютеров. Несмотря на острую конкуренцию операционных систем, иногда бывают периоды бурного развития и широкого распространения какой-то одной из них. Так, например, 1990-е гг. характеризовались массовым выпуском СУБД под Windows для настольных систем. Для корпоративных систем пальму первенства долгое время удерживала UNIX.
9. Рост производительности. Он присущ системам всех классов, но, разумеется, сама производительность для каждого класса систем различается. Наибольшей производительностью обладают СУБД, относящиеся к классу корпоративных систем.
10. Использование более развитых и разнообразных средств обеспечения целостности и безопасности данных.
11. «Интернационализация». Выражается в использовании СУБД ведущих производителей в разных странах мира; со стороны производителя это проявляется в локализациях версий. Поддержка национальных языков (Спецификация NLS - National Language Support).
12. Работа в многопользовательской среде. Распределенность. Работа в гетерогенной среде. Масштабируемость.
13. Открытость системы. Обеспечивается поддержкой определенных стандартов.
14. Преобладающая модель данных - реляционная. Наблюдается повышение «уровня реляционности» данных. Например, многие системы стали поддерживать концепции ключа, вероятного ключа, ссылочной целостности. Само понятие БД, которое не поддерживалось в некоторых популярных СУБД реляционной ориентации, например в xBase-системах, также введено в новые версии этих систем (например, в Visual FoxPro; причем возможно наличие, как изолированных файлов БД, так и объединенных понятием БД. При этом некоторые виды обработки возможны только для файлов, включенных в БД, например, задание ограничений целостности по связи.).
15. Преобладающий язык запросов - SQL. Это тоже говорит о повышении уровня реляционности.
16. Для структурированных БД - увеличение разнообразия типов поддерживаемых полей.
17. Развитие объектно-реляционных и объектно-ориентированных СУБД.
18. Развитие средств обеспечения безопасности данных.
19. Развитие средств упрощения эксплуатации баз данных. Управление базой данных в значительной степени автоматизировано.
20. Повышение качества CASE-средств. Широкое использование CASE-средств в практике проектирования и перепроектирования БнД.
21. Широкое использование графических интерфейсов; визуализация процессов проектирования и управления системой.
Словарь Данных
Описания баз данных относятся к метаинформации, т.е. информации об информации. Описание баз данных часто называют схемой. Кроме того, в БнД могут присутствовать описания отдельных частей базы данных с точки зрения конкретных пользователей. Такое описание называется подсхемой.
Хотя в буквальном смысле метаинформация — это информация об информации, в информационных системах это понятие трактуется более широко. Кроме описания баз данных в состав метаинформации, хранимой в БнД, может включаться информация о предметной области, необходимая для проектирования автоматизированной информационной системы, о пользователях БнД, о проектных решениях и некоторая другая информация
Централизованное хранилище метаинформации называется словарем данных. В литературе используются также термины словарь-справочник, энциклопедия, репозиторий. В некоторых источниках выявляются различия между этими терминами, в других - они используются как синонимы. Нам для данного уровня рассмотрения эти различия несущественны.