powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Хочу фоновые транзакции
1 сообщений из 1, страница 1 из 1
Хочу фоновые транзакции
    #32029723
none
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читая вчера раздел "Сравнение различных СУБД" наткнулся на забавный пост http://www.sql.ru/cgi-bin/UltraBoard/UltraBoard.pl?Action=ShowPost&Board=sqlflame&Post=22&Idle=365&Sort=0&Order=Descend&Page=0&Session=

Цитирую:

>> У Oracle уже больше 10 лет есть одно достоинство, про которое все "сравниватели" почему-то забывают. И которое делает сравнение этих двух СУБД не совсем правомерным. Это достоинство отсутствует у SQL Server и в ближайшем будущем не предвидится. Oracle позволяет определять для пользователя квоты на использование ресурсов СУБД и сервера. Иными словами, если у вас есть задачка на массовую закачку данных или какой-то очень навороченный SELECT, то в случае SQL Server-а этот процесс заберёт большую часть ресурсов и все остальные пользователи будут или висеть, или работать очень медленно. В случае c Oracle-ом можно сделать так, что это процесс будет выполняться в фоновом режиме, пусть дольше, но зато не будет глушить других пользователей базы данных.

Итак, хочу организовать такую штуку, как фоновые транзакции. Соответственно, в СУБД должен быть некий механизм, позволяющий "транзакцию" растянуть на определенное время. То есть, не используя этот механизм, транзакция выполняется 10 секунд и съедает 50% использования ЦПУ. При использования этого механизма можно добиться, чтобы транзакция длилась, например, 1 минуту и за время своего выполнения использовала бы всего не более 10% ЦПУ.

Что же там пишут в документации разработчики? Обращаемся в мой любимый раздел Концепций ("Oracle8i Concepts") и параллельно к разделам Oracle8i SQL Reference. Обращаем внимания на Controlling Database Access/User Resource Limits and Profiles и SQL предложения CREATE USER ... PROFILE .... и CREATE PROFILE .... В общем вижу, что для пользователя можно создать профиль (CREATE PROFILE), в котором будут заданы некоторые параметры, позволяющие решить мою задачу.
И? Дальше то что? Параметры вроде CPU_PER_SESSION, CPU_PER_CALL это конечно хорошо, но что они дают? Просто ограничивают сессию/транзакцию по времени. Превышено время - откатываем транзакцию/закрываем сессию. Ну а где то, что мне нужно? Где это пресловутый параметр, который ограничивает % использования ЦПУ транзакцией? Нету.
Значит верхняя цитата не имеет право на жизнь? Не верю! Выходит, я не нуда смотрю или не так смотрю. Господа Оракл-гуру, помогите!

P.S. На самом деле задача реальная, а вовсе не разглагольствования, и в течении ближайшего времени мне ее необходимо решить.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Хочу фоновые транзакции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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