Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / вопрос по ACTIVATE NOT LOGGED INITIALLY / 2 сообщений из 2, страница 1 из 1
04.01.2008, 15:17
    #35045070
GolemXIV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по ACTIVATE NOT LOGGED INITIALLY
Необходимо удаление части данных из большой таблицы (миллионы записей из сотен миллионов, выборка по диапазону primaryKey).

Подскажите пожалуйста, по идее использование
ALTER TABLE table_name ACTIVATE NOT LOGGED INITIALLY
должно ускорить выполнение некоторых операций за счет отсутствия логгирования, что, впрочем, чревато приведением таблицы в нерабочее состояние.

Это реальное ускорение или можно не заморачиваться? По смыслу описания выигрыш в скорости должен быть огромным.

В описании операции указано "At the completion of the current unit of work, the NOT LOGGED INITIALLY attribute is deactivated and all operations that are done on the table in subsequent units of work are logged."

Что для DB2 является "unit of work"? Нет никакого эффекта ни при последовательном выполнении действий ни для connection, ни для statement, ни для транзакции. Куда глубже то?
...
Рейтинг: 0 / 0
09.01.2008, 15:57
    #35050459
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по ACTIVATE NOT LOGGED INITIALLY
unit of work - транзакция.
выигрыш в скорости может и не быть огромным, но вы обойдете проблему переполнения журнала транзакции или необходимость делать его очень большим.
Перевод этой цитаты из доки следующий:
После завершения текущей транзакции (т.е. той, в которой было alter table ... activate not logged initially и операции изменения данных этой таблицы), атрибут NOT LOGGED INITIALLY деактивируется и все операции над таблицей, сделанные в ПОСЛЕДУЮЩИХ транзакциях, логируются.
т.е.:
Код: plaintext
1.
2.
3.
4.
-- autocommit off
alter table t1 activate not logged initially;
delete from t1 where ...; --- <- this operation IS NOT logged
commit;
delete from t1 where ...; --- <- this operation IS logged
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / вопрос по ACTIVATE NOT LOGGED INITIALLY / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]