Главная » SQL, Базы данных » Модель TransRelational™

0

В различных областях научных исследований время от времени  рождаются идеи,   которые   оказываются  настолько   новаторскими  и   превосходящими  по значимости все созданное ранее, что их можно смело назвать открытиями. Одним из наглядных  примеров  такого  открытия  в   мире  баз  данных  явилось  создание реляционной  модели;  почти  все,  что  описано  в  этой  книге,  может  служить доказательством  революционного характера и огромного влияния одной этой блестящей идеи. А теперь мы становимся свидетелями рождения того, что может оказаться еще одним важным открытием, — модели TransRelational™. По мнению автора  настоящей  книги,  модель  TransRelational,  разработанная  Стивом  Тареном (Steve Tarin) и в дальнейшем называемая сокращенно моделью TR, вполне может оказаться наиболее значительным достижением в этой области с тех пор, как Кодд ознакомил нас с реляционной моделью примерно 35 лет тому назад.

Необходимо сразу же отметить, что модель TR не предназначена для  замены реляционной  модели;  приставка  "trans"  в  слове  "transrelational"   не  означает "оставляющий за собой" (как, например, в слове "трансатлантический"). В данном случае она является сокращением от слова transformation (преобразование). Верно, что и модель TR, и реляционная модель являются абстрактными моделями данных, но модель TR находится  на более низком уровне абстракции (т.е. она ближе к структурам  физической памяти); в действительности, модель TR,  кроме всего прочего,  предназначена  для  использования  в  качестве  средства   реализации реляционной модели. Напомним, что в конце главы 18 есть  такие слова: "Но в последнее   время   появились   реализации   принципиально   нового   подхода   к организации работы СУБД, а этот подход, по сути, ставит под сомнение многие предположения, лежащие в основе указанных эмпирических подходов". Под этим новым подходом подразумевалась модель TR.

Прежде  чем  перейти  к  описанию  технических  подробностей,   необходимо привести  необходимую  подготовительную  информацию.  В   действительности, модель TR как таковая представляет собой конкретное приложение более общей технологии, получившей название преобразования Тарена в честь ее разработчика. Метод преобразования Тарена, на который  распространяется патент США [А.2], предназначен для использования в качестве технологии реализации для систем хранения и выборки

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

Web, системы, основанные на использовании языка XML и т.д. В отличие от этого, тема

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

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

логический уровень отображается на физический, и наоборот. Но в большинстве современных

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

Рис. АЛ. Реализация с прямым отображением

В отличие от этого, в модели TR используются намного более совершённые средства преобразования. Ниже описаны некоторые непосредственные следствия из этого факта.

■     Модель TR обеспечивает гораздо большую независимость от данных по сравнению с той,

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

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

■     При использовании модели TR оптимизация осуществляется значительно проще,  чем  при использовании систем с непосредственным отображением; зачастую существует только один очевидный и при этом наилучший способ реализации любой конкретной реляционной операции.

■     Производительность модели TR на несколько порядков выше по сравнению с системами непосредственного  отображения.  В  частности,  производительность   операции  соединения является линейной! Это фактически означает, что количество времени, которое требуется для

Приложение А. Модель Trans Relationalm                                           1177 соединения 20 отношений (говоря неформально) только в два раза превышает количество времени, необходимое для соединения 10 отношений. Кроме того, из этого следует такой важный вывод, что система вообще становится способной поддерживать соединение 20 отношений (что само по себе очень сложно), иными словами, система приобретает способность к масштабированию.

■     Администрирование системы в значительной степени упрощается, поскольку гораздо реже

приходится принимать субъективные решения.

■     На физическом уровне системы вообще отсутствует такое понятие, как "хранимая переменная

отношения", или "хранимый кортеж"!

В  данном  приложении  приведено  краткое  описание  принципов  работы  модели   TR. Безусловно, что здесь недостаточно места для описания всех аспектов ее функционирования. Поэтому для того чтобы иметь возможность описать ее, не выходя  за установленные рамки, автор решил не рассматривать, во-первых, операции  обновления и, во-вторых, операции с вторичной памятью. Иными словами, в  этом  описании приняты предположения, что база данных предназначена только для чтения и находится в оперативной памяти. Но из этого не следует делать вывод, что модель TR предназначена для использования лишь в базах данных, обеспечивающих только чтение и находящихся в оперативной памяти; дело обстоит совсем иначе.  Подробное   описание  всех  областей  применения  модели  TR,  включая  операции обновления и  базы данных, хранимые на диске, приведено в учебном руководстве, которое написано автором настоящей книги [АЛ].

Источник: Дейт К. Дж., Введение в системы баз данных, 8-е издание.: Пер. с англ. — М.: Издательский дом «Вильямс», 2005. — 1328 с.: ил. — Парал. тит. англ.

По теме:

  • Комментарии