Главная » SQL, Базы данных » Структуры хранения и методы доступа

0

В   данном   приложении   приведен   учебный   обзор   методов,    обычно используемых  в  современных  системах  для  физического  представления  и доступа  к  базе  данных  на  диске.  (Примечание.  Во  всем  этом  приложении термин   диск   применяется   как   общее   обозначение   для   всех   носителей информации  с  непосредственным   доступом,  включая,  например,  массивы RAID, запоминающие устройства большой емкости, оптические диски и т.д., а также  обычные  магнитные диски с подвижными головками как таковые.) Предполагается, что читатель имеет основное представление об  архитектуре диска  и  знает,  что  подразумевается  под  терминами  время  поиска,  частота вращения, цилиндр, дорожка, головка чтения-записи и  т.д. Хорошие учебные руководства по этой теме можно легко найти; см., например, [Г.4].

Основная  причина,  побуждающая  к   постоянному   совершенствованию всей технологии организации структур хранения и методов доступа, состоит в том, что характеристики  доступа к  диску  намного хуже по сравнению с соответствующими  характеристиками  доступа  к  оперативной  памяти.  Как правило, значения времени  поиска  составляют порядка 5 или 6 мс, частоты вращения — до 10000 мин -1, а скорость передачи данных обычно находится в  пределах  5—10  Мбайт/с,  поэтому,  как  правило,  в  любой  конкретной системе  обмен  данными  с  оперативной  памятью  происходит  по  меньшей мере на четыре или пять порядков быстрее по сравнению с  диском. Таким

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

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

Как уже было указано,  любое конкретное  размещение данных на диске  называется  структурой хранения.  Уже  было  предложено  много  различных  структур  хранения  (и  на  этом  все  возможные варианты не исчерпываются), а разные структуры, безусловно, обладают  различными характеристиками производительности; некоторые из них больше подходят для одних приложений, а другие — для других. По-видимому, невозможно найти единственную структуру,  которая была бы оптимальной для всех возможных  приложений.  Из   этого  следует,  что   качественно   спроектированная  система  должна поддерживать целый ряд различных структур,  чтобы разные части базы данных можно было хранить различными способами, а также  изменять структуру хранения для любой конкретной части базы по мере изменения  требований к производительности или достижения лучшего понимания требований к хранению.

Настоящее приложение имеет  следующую структуру.  Вслед  за  этим  вступительным  разделом находится раздел Г.2, в котором кратко  описано, в чем состоит весь процесс  поиска и доступа к некоторой конкретной записи, а также указаны основные программные  компоненты, участвующие в этом процессе. После этого в разделе Г.З немного более подробно  описаны два из таких компонентов

— диспетчер файлов (file manager) и диспетчер диска (disk manager). Эти два раздела (Г.2 и Г.З)  при

первом  чтении  достаточно  просто  просмотреть;  значительное  количество  содержащихся  в   них подробных   сведений  действительно  не   требуется  для   понимания  последующего   материала.  Но следующие четыре раздела (Г.4—Г.7) необходимо изучить очень внимательно, поскольку они содержат наиболее важные сведения по всей обсуждаемой теме; в них описаны некоторые из структур хранения, наиболее    широко    применяемых    в    современных     системах,     соответственно,    подзаголовками "Индексация",  "Хэширование",  "Цепочки   указателей"  и  "Методы  сжатия".  Наконец,  в  разделе  Г.8 приведено резюме и сделано краткое заключение.

Примечание. В данном приложении основное внимание уделено изложению концепций, а не деталей. Но оно предназначено для описания основных идей, лежащих в основе таких понятий, как индексация, хэширование   и  т.д.,  без  лишнего  углубления  в  конкретные  особенности   любой  отдельно  взятой системы   или   конкретного   метода.   Если   же   читателю    необходимо   ознакомиться   с   такими подробностями,  он  может  воспользоваться  книгами  и  статьями,  которые  перечислены  в  разделе "Список литературы" в конце данного приложения.

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

По теме:

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