Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lectures.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
556.54 Кб
Скачать

Современные исследования в области бд

1.Введение

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

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

1.1.Реляционные системы

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

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

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

Развитие и стандартизация SQL

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

В 1992 г. был принят новый стандарт SQL-92. Этот язык существенно более сложен, чем SQL-89, а конструкции SQL-92 специфицированы в стандарте существенно более полно. Первой компанией, которая объявила о соответствии своего продукта новому стандарту, была компания Oracle со своей седьмой версией (это произошло также в 1992 г.).

Кроме того, как это бывает всегда, производители стремятся добавить к своим продуктам качества, превышающие требования стандарта. Например, современные версии Oracle и Ingres содержат некоторые возможности определения триггеров, не предусмотренные действующим стандартом, но очень полезные и привлекательные для разработчиков прикладных систем; в системе uniVerse компании VMark поддерживается расширенная ненормализованная реляционная модель и т.д. Другими словами, (поскольку стандарты почти всегда принимаются по итогам «полезности и популярности», а следовательно, хотя и вносят строгость в основу, всегда отстают от текущих требований) компании стремятся смотреть в будущее, предвидя требования следующего стандарта SQL. К слову сказать, работа в комитете по стандартизации языка SQL является очень существенной частью научно-практической деятельности компаний.

Параллельные серверы баз данных

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

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

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

Заметим, что в большинстве случаев компании пошли на это после появления в ОС UNIX механизма легковесных процессов (threads). О серьезности этой работы говорит тот факт, что, например, в компании Informix было образовано новое подразделение, занимающееся исключительно вопросами распараллеливания работы серверов. Одной из проблем коммерческих компаний, разрабатывающих мобильные параллельные серверы баз данных, является отсутствие стандарта механизма легковесных процессов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]