ISAM: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
стилевые правки
Строка 1:
'''ISAM''' ({{lang-en|Indexed Sequential Access Method}} — Индексноиндексно-Последовательныйпоследовательный Методметод Доступадоступа) — способ хранения данных для быстрого доступа к ним. Способ был разработан компанией [[IBM]] для [[мейнфрейм]]ов в 1963 году, в настоящее время это основной способ представления данных почти во всех базах данных (реляционных и пр.).
 
В ISAM отдельно хранятся записи с данными и [[индекс (базы данных)|индексы]] (служебные данные), служащие для быстрого доступа к записям. Данные хранятся последовательно (изначально ISAM использовался для хранения данных на [[ленточный накопитель|ленточных накопителях]], обеспечивающих только последовательные чтение/запись). Второй набор данных — [[хеш-таблица]] — индексы, содержащие указатели, которые позволят извлечь определенные записи без поиска по всей базе данных. Это несколько отличается от индексов в современных поисковых базах данных, так как в них индексы хранятся прямо в записях. Ключевая особенность ISAM — индексы малы, и поиск по ним быстр. Изменение в записях не требует изменять все записи, требуется только перестроить индекс.
 
Реляционные базы данных могут быть построены на способе хранения данных ISAM с добавленной логикой по сохранению целостности связей между таблицами. Обычно поле, используемое для связи ([[внешний ключ]]), индексируется для быстрого поиска. Конечно, это медленнее, чем просто хранить указатели на нужные записи в другой таблице непосредственно в записях, но зато изменения на физическом уровне хранения данных не потребуют изменения указателей.