Skip to content

Instantly share code, notes, and snippets.

Created September 28, 2017 01:51
Show Gist options
  • Save anonymous/1b201d76bb3c359090582a1424185cb1 to your computer and use it in GitHub Desktop.
Save anonymous/1b201d76bb3c359090582a1424185cb1 to your computer and use it in GitHub Desktop.
Структура внешней памяти

Структура внешней памяти



5.4. Структуры внешней памяти
Структура пк: внешняя память компьютера, назначение, основные параметры.
Лекция 9. Cтруктуры внешней памяти, методы организации индексов

Реляционные СУБД обладают рядом особенностей, влияющих на организацию внешней памяти. К наиболее важным особенностям можно отнести следующие:. При такой организации подсистема нижнего уровня должна поддерживать во внешней памяти набор базовых структур, конкретная интерпретация которых входит в число функций подсистемы верхнего уровня;. Информация, связанная с именованием объектов базы данных и их конкретными свойствами например, структура ключа индекса , поддерживается подсистемой языкового уровня. С точки зрения структур внешней памяти отношение-каталог ничем не отличается от обычного отношения базы данных;. Поскольку основным объектом реляционной модели данных является плоская таблица, главный набор объектов внешней памяти может иметь очень простую регулярную структуру. При этом необходимо обеспечить возможность эффективного выполнения операторов языкового уровня как над одним отношением простые селекция и проекция , так и над несколькими отношениями наиболее распространено и трудоемко соединение нескольких отношений. Для этого во внешней памяти должны поддерживаться дополнительные "управляющие" структуры - индексы. Наконец, для выполнения требования надежного хранения баз данных необходимо поддерживать избыточность хранения данных, что обычно реализуется в виде журнала изменений базы данных. Соответственно возникают следующие разновидности объектов во внешней памяти базы данных:. Существуют два принципиальных подхода к физическому хранению отношений. Наиболее распространенным является покортежное хранение отношений кортеж является единицей физического хранения. Естественно, это обеспечивает быстрый доступ к целому кортежу, но при этом во внешней памяти дублируются общие значения разных кортежей одного отношения и, вообще говоря, могут потребоваться лишние обмены с внешней памятью, если нужна часть кортежа. Обычно каждый кортеж хранится целиком в одной странице. Из этого следует, что максимальная длина кортежа любого отношения ограничена размерами страницы. Наиболее простым решением является хранение таких данных в отдельных вне базы данных файлах с заменой "длинного" данного в кортеже на имя соответствующего файла. В некоторых системах например, в предпоследней версии СУБД Informix такие данные хранились в отдельном наборе страниц внешней памяти, связанном физическими ссылками. Оба эти решения сильно ограничивают возможность работы с длинными данными как, например, удалить несколько байтов из середины 2-мегабайтной строки? В настоящее время все чаще используется метод, предложенный несколько лет тому назад в проекте Exodus, когда "длинные" данные организуются в виде B-деревьев последовательностей байтов. Существуют также варианты с возможностью хранения в одной странице кортежей нескольких отношений. Это вызывает некоторые дополнительные расходы по части служебной информации при каждом кортеже нужно хранить информацию о соответствующем отношении , но зато иногда позволяет резко сократить число обменов с внешней памятью при выполнении соединений. Изменение схемы хранимого отношения с добавлением нового столбца не вызывает потребности в физической реорганизации отношения. Достаточно лишь изменить информацию в описателе отношения и расширять кортежи только при занесении информации в новый столбец. Поскольку отношения могут содержать неопределенные значения, необходима соответствующая поддержка на уровне хранения. Обычно это достигается путем хранения соответствующей шкалы при каждом кортеже, который в принципе может содержать неопределенные значения. Проблема распределения памяти в страницах данных связана с проблемами синхронизации и журнализации и не всегда тривиальна. Например, если в ходе выполнения транзакции некоторая страница данных опустошается, то ее нельзя перевести в статус свободных страниц до конца транзакции, поскольку при откате транзакции удаленные при прямом выполнении транзакции и восстановленные при ее откате кортежи должны получить те же самые идентификаторы. Альтернативным менее распространенным подходом является хранение отношения по столбцам, то есть единицей хранения является столбец отношения с исключенными дубликатами. Естественно, что при такой организации суммарно в среднем тратится меньше внешней памяти, поскольку дубликаты значений не хранятся; за один обмен с внешней памятью в общем случае считывается больше полезной информации. Дополнительным преимуществом является возможность использования значений столбца отношения для оптимизации выполнения операций соединения. Но при этом требуются существенные дополнительные действия для сборки целого кортежа или его части. Распространенным способом повышения эффективности СУБД является кластеризация отношения по значениям одного или нескольких столбцов. Полезным для оптимизации соединений является совместная кластеризация нескольких отношений. С целью использования возможностей распараллеливания обменов с внешней памятью иногда применяют схему декластеризованного хранения отношений: Что же касается хранения отношения по столбцам, то основная идея состоит в совместном хранении всех значений одного или нескольких столбцов. Для каждого кортежа отношения хранится кортеж той же степени, состоящий из ссылок на места расположения соответствующих значений столбцов. Одним из приемов является так называемое вертикальное разделение отношений, когда в разных узлах сети хранятся разные проекции данного отношения распределенной БД. Хранение отношения по столбцам в некотором смысле является предельным случаем вертикального разделения отношений. FAQ Обратная связь Вопросы и предложения. Upload Опубликованный материал нарушает ваши авторские права? Самарский Государственный Аэрокосмический Университет им. Структуры внешней памяти Реляционные СУБД обладают рядом особенностей, влияющих на организацию внешней памяти. К наиболее важным особенностям можно отнести следующие: Соответственно возникают следующие разновидности объектов во внешней памяти базы данных: Хранение отношений Существуют два принципиальных подхода к физическому хранению отношений.


Схема проводки иж юпитер
Звания фссп таблица
Характеристика россельхозбанкана 2016 год
Быстрая помощь студентам
Замариновать огурцов на зиму
Шали крючком схемы и описание из мотивов
Спорттовары на остужева воронеж каталог товаров
Лекция 9 «Внутренняя организация реляционных СУБД»
Звонят откройте дверь
Как сделать кровавый жнециз дерева чертежи
Организация внешней памяти
Решебник по английскому переводы 7 класс
Лазерное лечение гипергидроза подмышек отзывы
Столбовой фундамент своими руками
Cтруктуры внешней памяти, методы организации индексов
Поздравление главному бухгалтеру
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment