Какой оптимальный размер транзакции

1. Vitaly1C8 28.12.22 13:18 Сейчас в теме
Добрый день !
Есть 200 000 разнородных объектов (документы, элементы справочников и т.д.)
Предполагается пометка этих объектов на удаление (возможно изменение)
Вопрос: Какой оптимальный размер транзакции ?
(Может есть какие то рекомендованные значения? База PostgreSQL)
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 28.12.22 14:21 Сейчас в теме
(1) Выполнять вообще не в транзакции.
3. anton13m 3 28.12.22 14:32 Сейчас в теме
(1)
Рекомендации есть здесь.
2.1. В общем случае в рамках одной транзакции нужно выполнять только те действия, которые неделимы, исходя из бизнес-логики.
2.1.1. Если с точки зрения бизнес-логики действия могут быть выполнены по отдельности, то их в общем случае не следует объединять в одну транзакцию.
2.2. Следует избегать транзакций, которые выполняются длительное время.
4. soft_wind 28.12.22 14:39 Сейчас в теме
вообще в транзакцию включают какие-то взаимосвязанные действия.
если какое-то из связанных действий не выполнилось то все предыдущие отменяются,

а если действия атомарные, типа пометки удаления то их и не нужно включать в транзакцию!
у вас же не стоит условие что если хотя бы один документ не пометился на удаление то и остальные 2000000 не помечать?
5. Vitaly1C8 28.12.22 14:49 Сейчас в теме
(4) транзакция разве не ускоряет выполнение ? (на файловой базе точно ускоряет)
в данном случае планируется использовать транзакцию только для ускорения процесса ...
7. user1863362 28.12.22 15:06 Сейчас в теме
(5)
транзакция разве не ускоряет выполнение ?

Где-то рядом тихо грустит Миша Калимулин, пытающийся переадресовать этот вопрос нейросетке...
6. soft_wind 28.12.22 14:55 Сейчас в теме
(5) нет конечно! скорее всего даже тормозит!
как и любой другой дополнительный функционал! (все что выполняет какие-то дополнительные функции - требует время!)

на транзакции только при отмене, можно что-то выиграть, так как не надо весь предыдущий код "отматывать" назад
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот