D3 Reference Manual

Index | Help

Поиск по страницам

Разделы / Общие сведения / transaction logger

transaction logger

Журнал транзакций

Изменения записываются во внутреннюю очередь. Затем эта очередь записывается на устройство, ленту или в сеть процессом обслуживания очереди (dequeuing process), который выполняется на фантомной линии.

Если процесс обслуживания очереди успевает за поступлением записей в очередь от пользователей, защита данных от потери при сбоях обеспечивается до секунды. В сочетании с копиями файлов на лентах (file-save tapes) копии изменений обеспечивают всю необходимую информацию для восстановления системы после сбоя.

Если используется еще одна машина, она обеспечивает "горячую копию" или "горячий резерв" ("hot backup".). Для организации такого резерва необходимо создать программные каналы (pipes) на обеих машинах с помощью меню "tape-socket". Описание параметров см. в разделе "tape-socket".

"Startlog" на основной машине и "tlog-restore" на второй машине обеспечивают выполнение всех необходимых функций для быстрого восстановления.

"Txlog" - это меню, которое помогает управлять регистрацией транзакций. С его помощью можно запускать и останавливать процесс обслуживания очереди, а также фильтровать данные, поступающие в очередь. Можно записывать изменения по всем файлам или только по файлам, у которых атрибут содержит символ "l".

"set-dptr" - это глагол, с помощью которого можно добавить код "l" в атрибут 1 или удалить код "l" из этого атрибута в одном или всех "D"-указателях в счете.

Устройство должно быть подсоединено (attached) к порту, с которого запускается процесс обслуживания очереди. Программа регистрации транзакций (transaction logger) захватывает устройство (операция "steal") и начинает вывод на него записей из очереди. Программа регистрации работает в фантомном процессе. Как правило, это последний процесс перед запуском планировщика.

При входе в "stoplog" текущий том на устройстве, принимающем записи из очереди, закрывается маркером файла, и процесс обслуживания очереди выполняет команду "t-det". Он запоминает, какое устройство использовалось, но в данный момент это устройство свободно. Во время следующего входа в "startlog" лента подсоединяется заново, и номер тома увеличивается.

Во время сеанса обслуживания очереди каждый том обрабатывается независимо от других. Восстанавливать эти тома из TCL можно как по очереди, так и каждый том отдельно.

Многопользовательская лента сообщает список устройств на выбор. Для того, чтобы команда "startlog" выдавала этот список, отключите все ленточные устройства перед ее вызовом.

Примеры:

set-dptr +l invoices (f
  invoices             :     D -> DL
    invoices           :     D -> DL
set-sct
Block size: 16384
(Размер блока: 16384)
[1709] Tape device is assigned to med density (150M) quarter inch tape (SCT).

(В качестве устройства используется лента 1/4 дюйма (SCT) со средней плотностью записи (150 М))

startlog
Activate transaction logger (y/n)?y
(Запуск программы регистрации транзакций?)
[607] Transaction logger started.
(Программа регистрации транзакций приведена в действие)

Эта последовательность команд позволяет поместить в очередь все изменения файла "invoices" для записи на ленту SCT.

stoplog
[602] The transaction logger is disabled.
(Программа регистрации транзакций отключена)

По этой команде на ленту записывается маркер файла, и лента открепляется от программы регистрации транзакций командой "t-det". Но изменения все-таки будут автоматически поступать в очередь. Это том 1.

startlog [607] Transaction logger started. (Программа регистрации транзакций приведена в действие)

Эта команда возобновляет запись транзакций на ленту SCT в том 2.