Бакалавр
Дипломные и курсовые на заказ

Основные понятия, используемые при администрировании информационных систем

РефератПомощь в написанииУзнать стоимостьмоей работы

Самый простой тип курсора — последовательный. Он позволяет просматривать строки в наборе, передвигаясь только вперед. Если были произведены какие-либо изменения в наборе записей этой или другими транзакциями, то они будут видны только впереди курсора. Статический курсор видит все изменения, которые внесены только транзакцией, открывшей его. Ключевой курсор по функциональности занимает… Читать ещё >

Основные понятия, используемые при администрировании информационных систем (реферат, курсовая, диплом, контрольная)

Введение

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

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

Фантомное чтение — ситуация, в которой транзакция при повторном чтении данных, считанных ранее, обнаруживает новые данные, которые появились в результате успешного выполнения другой транзакции.

В стандарте SQL определены четыре уровня изоляции транзакции в зависимости от допустимости появления перечисленных выше проблем (табл. 3.1).

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

Таблица 3.1

Уровни изоляции транзакций.

Проблема.

Уровень изоляции транзакции.

Незавершенное чтение.

Завершенное чтение.

Воспроизводимое чтение.

Сериализуе;

мость.

Грязное чтение.

Возможно.

Невозможно.

Невозможно.

Невозможно.

Н свосп роизводимое чтение.

Возможно.

Возможно.

Невозможно.

Невозможно.

Фантомное чтение.

Возможно.

Возможно.

Возможно.

Невозможно.

Введем еще одно понятие, которое понадобится в дальнейшем.

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

Существует четыре типа курсоров, последовательный, статический, ключевой и динамический. Перечисленные типы курсоров объединяются в две группы: однонаправленные (последовательный) и двунаправленные (статический, ключевой и динамический).

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

Выбор курсора зависит от задачи, решаемой приложением. Самым ресурсоемким является динамический курсор.

Показать весь текст
Заполнить форму текущей работой