Скачиваний:
79
Добавлен:
02.05.2014
Размер:
2.54 Mб
Скачать

22.1. Введение

Замечание. Автор оригинального текста этой главы — Хью Дарвен (Hugh Darwen).

Хронологическая база данных — это, говоря упрощенно, база данных, содержащая исторические накопленные данные вместо (или кроме) текущих данных. Такие базы данных начали активно исследоваться с середины 70-х годов. В некоторых из исследова­ний была принята крайняя точка зрения, согласно которой информация в подобные базы данных только вносится и никогда не удаляется и не обновляется (см. обсуждение храни­лищ данных в предыдущей главе), поэтому база данных содержит только исторические данные. Другая крайность— базы данных типа моментальный снимок1, которые со­держат только текущие данные, удаляемые или обновляемые, когда содержание этих данных уже не соответствует действительности. Иными словами, база данных типа мо­ментального снимка — это просто база данных в обычном понимании, а вовсе не хроно­логическая база данных.

В качестве примера еще раз рассмотрим базу данных поставщиков и деталей, пред­ставленную на рис. 3.8. Безусловно, эта база данных имеет тип моментального снимка. Например, в ней содержатся сведения о текущем статусе поставщика с номером 'S1', который в данный момент равен 20. Однако в хронологической версии этой базы данных был бы отражен не только текущий статус поставщика с номером 'S1', равный 20, но также было бы указано, что его статус равен 20 с 1 июля, а, скажем, с 5 апреля по 30 июня его статус был равен 15, и т.д.

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

Не имеют ничего общего с моментальными снимками, описанными в главе 9.

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

  • Философский вопрос. Имеет ли время начало и/или конец?

  • Научный вопрос. Время непрерывно или представляет собой дискретные кванты?

  • Психологический вопрос. Как лучше всего определить такое важное понятие, как данный момент времени, которое часто называют моментом пересылки?

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

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

  • Дисковая память лишь совсем недавно стала настолько дешевой, что храни­лища исторических данных большого объема стали практически реализуемы­ми. Однако, как указывалось в главе 21, "хранилища данных" сейчас стано­вятся обыденной реальностью. Поэтому пользователи будут все чаще сталки­ваться с проблемами, связанными с хронологическими базами данных, и нуж­даться в их решении.

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

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

например, [22.4]). Другие же отдают предпочтение более общим операторам,

которые при необходимости могли бы служить основой для реализации спе­циализированного подхода, не отступая при этом от основных реляционных принципов (см., например, [22.3]). Излишне говорить, что мы поддерживаем именно последний подход.

Структура этой главы будет рассмотрена в следующем разделе.

Соседние файлы в папке Дейт К. Дж. Введение в системы баз данных [7 издание]