powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE 12.5 Как работать не забивая журнал транзакций?
10 сообщений из 10, страница 1 из 1
ASE 12.5 Как работать не забивая журнал транзакций?
    #35300417
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASE 12.5
Ситуация простая. Есть довольно длительный расчет, который запускался в ночь. Объемы росли, ночи стало не хватать. Чтоб ускорить расчет, скрипт был оформлен как хранимка. Объемы возросли и вот теперь очередная беда - переполняется журнал транзакций - идет много операци ввода/вывода. Характер расчетов таков, что он не зависит от предыдущего расчета и не увечит исходные данные. Т.е. транзакция на весь расчет не нужна. Можно ли совсем отказаться от записи в transaction log или хотя бы нашинковать весь расчет на мелкие транзакции в рамках одной хранимой процедуры?
Процедура запускается через утилиту ISQL.
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35300464
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отказаться от записи в transaction log в ASE нельзя. Если транзакция на весь расчет не нужна, то лучше дробите на более мелкие транзакции ...
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35300555
up
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
morisОтказаться от записи в transaction log в ASE нельзя. Если транзакция на весь расчет не нужна, то лучше дробите на более мелкие транзакции ...
Ну почему так категорично. Если речь идёт про запись данных в таблицы, которые мы сами и создаём, то можно использовать select ... into ... вместо create + insert, который не пишет в лог сами данные, а только выделение места. Соответственно для таких операций вставки рост лога сократится значительно. Естественно одноимённая опция на базе должна стоять.
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35300565
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select ... into ... конечно можно, но в таком случае мы не сможем делать инкрементальные дампы транзакций.. после таких расчетов. Так что сами решайте чего лучше..
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35300818
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> (1) Характер расчетов таков, что он не зависит от предыдущего расчета и не
> увечит исходные данные. (2) Т.е. транзакция на весь расчет не нужна.

(2)-ое отнюдь не вытекает из (1)-го, как вы думаете.

Можно
> ли совсем отказаться от записи в transaction log

Нет. Лог - это основное средство реализации ACID-транзакционности,
сервер без лога работать не может.

> или хотя бы нашинковать
> весь расчет на мелкие транзакции в рамках одной хранимой процедуры?

Можно. можно убрать BEGIN TRAN/COMMIT и каждый стейтмент будет своей
транзакцией.

> Процедура запускается через утилиту ISQL.
это почти все равно.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35301030
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В ASA нетранзакционные временные таблицы уже давно есть.. а асе все никак не родит..
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35301270
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я правильно понимаю:
- eсли нет операторов begin tran ни в вызывающем скрипте ни в теле самой процедуры - каждый SQL-statement оформляется самостоятельной транзакцией?

Такое поведение не регулируется какими-нибудь параметрами?
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35301825
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
golsaЯ правильно понимаю:
- eсли нет операторов begin tran ни в вызывающем скрипте ни в теле самой процедуры - каждый SQL-statement оформляется самостоятельной транзакцией?

Нет, по крайней мереб для поведения ASE по умолчанию.
Transaction mode регулируется с помощью set chained
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35302862
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
golsaЕсть довольно длительный расчет, который запускался в ночь
Может для этого сервисного процесса создать отдельную tempdb и запускать скрипт "из нее"?
...
Рейтинг: 0 / 0
ASE 12.5 Как работать не забивая журнал транзакций?
    #35324875
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тема закрыта. Как всегда ларчик открывался просто - у базы данных была снята опция trunc log on chkpt .
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE 12.5 Как работать не забивая журнал транзакций?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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