русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Особенности организации таблиц в СУБД HyTech


Дата добавления: 2015-07-09; просмотров: 569; Нарушение авторских прав


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

Такая организация данных отличается следующими особенностями:

· Изменяется способ модификации, т.е. добавление или изменение записи сводится к простой записи в последовательный файл, что требует минимальных накладных расходов.

· Изменяется способ коррекции индексов. Обычно, модификация таблицы, кроме изменения самих данных, требует коррекции индексов. Чем больше в таблице проиндексированных элементов, тем большее время будет занимать их коррекция, а значит, и общее время выполнения модификации. Отказ же от индексов, в общем случае, ухудшает время поиска, т.к. требует полного перебора данных. Дифференциальная организация файлов предлагает компромиссное решение: измененная или добавленная запись заносится в журнал изменений таблицы, в нем же метятся удаленные записи, и коррекция индексов не производится, т.к. индексы построены только для постоянной части таблицы.

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



· Упрощается система организации транзакций. Известно, что одним из базовых свойств транзакции является согласованность по чтению. Это означает, что изменения, производимые в процессе выполнения транзакции одним пользователем, не должны быть видны другим пользователям до завершения или прерывания транзакции. При дифференциальной организации файлов это решается достаточно просто. Перед началом транзакции делается «мгновенный снимок» состояния таблицы в журнале изменений, что не требует операций с диском, создания «черновых» страниц и прочих операций, связанных с реализацией транзакции. Журнал транзакций при этом содержит список таблиц, связанных с транзакцией, и их мгновенные снимки. При этом пользователю, выполняющему транзакцию, доступно реальное состояние таблицы, в том числе и сделанные им изменения. При удачном завершении транзакции произведенные пользователем изменения станут доступны всем, а информация о завершенной транзакции будет стерта в журнале транзакций. При неудачном завершении транзакций отказ от выполненных изменений производится достаточно просто, а журнал таблицы сокращается до сохраненной ранее точки, т.е. снимка момента начала транзакции. Таким образом, снимки всегда соответствуют согласованному состоянию таблиц, означающему, что данные находятся в непротиворечивом состоянии.

· Значительно повышается уровень сохранности данных и устойчивости СУБД к отказам, так как потери данных при возможных сбоях питания и ПО могут затронуть только журнал изменений.

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

· В системе с дифференциальной организацией файлов достаточно просто решаются вопросы копирования для целей резервирования БД, так как достаточно сделать «снимки» архивируемых таблиц и выполнить копирование данных в рамках сделанных «снимков».



<== предыдущая лекция | следующая лекция ==>
Схема взаимодействия клиента и сервера | Недостатки организации таблиц в СУБД HyTech


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.303 сек.