Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3 4 5 6 7 8 9   вперед  Ctrl      все
 Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Когда лучше делать комит в сервлете при добавлении строк в таблицу базы: после каждого экскьютАпдейт или 200 строк заинсертить, а уже потом комит сделать?
8 авг 18, 06:49    [21633710]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14623
Korcar,
всё зависит от задачи , есть варианты когда нужно фиксировать и каждое введённое значение.
8 авг 18, 07:07    [21633718]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
вадя
Korcar,
всё зависит от задачи , есть варианты когда нужно фиксировать и каждое введённое значение.

каждое не нужно. или всё или ничего
8 авг 18, 07:18    [21633722]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Beginner10
Member

Откуда:
Сообщений: 8
вадя,

Здравсвуйте можете пожалуйста помочь мне с задачей
8 авг 18, 07:22    [21633725]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Beginner10
вадя,

Здравсвуйте можете пожалуйста помочь мне с задачей

интересное утверждение, полагаю, что вадя, конечно, сможет, но ты то откуда знаешь? XD
8 авг 18, 08:00    [21633738]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14623
Korcar
каждое не нужно. или всё или ничего
твоя задача - тебе видней, тут совет дать трудно
у меня - юзер может в любой момент отвлечься , а введённое сохранено, и повторять не нужно.
199 строк ввёл, и комп перегрузился - всё по новой?
8 авг 18, 08:35    [21633773]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Beginner10
Member

Откуда:
Сообщений: 8
вадя,

Здравствуйте можете помочь с задачей) пожалуйста(
8 авг 18, 09:14    [21633788]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
вадя
Korcar
каждое не нужно. или всё или ничего
твоя задача - тебе видней, тут совет дать трудно
у меня - юзер может в любой момент отвлечься , а введённое сохранено, и повторять не нужно.
199 строк ввёл, и комп перегрузился - всё по новой?

неее, там автоматом записи из файла закидываются в базу. пользователь по большому счету не нужен. суть вопроса в том, не переполнится ли некий буфер, который хранит все екскьютапдейты до применения комита?
8 авг 18, 11:49    [21634083]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5470
Korcar,

если JDBC, то используйте executeBatch
8 авг 18, 12:08    [21634116]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34645
Korcar,
Буфер где?
У вас сервлет работает 0,1 сек.
Так?
8 авг 18, 12:25    [21634166]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Petro123
Korcar,
Буфер где?
У вас сервлет работает 0,1 сек.
Так?

не так. секунды 3-4
8 авг 18, 14:18    [21634416]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Kachalov
Korcar,

если JDBC, то используйте executeBatch

опа! третий вариант. нашёл этот метод, но ни в одном примере его не встречал. чем он такой полезный?
8 авг 18, 14:20    [21634420]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5470
Korcar
опа! третий вариант. нашёл этот метод, но ни в одном примере его не встречал. чем он такой полезный?

- специально предназначен для многократно повторяющихся запросов (insert, update). Повышает производительность. Проблемы с памятью те же - если нужно все в одну транзакцию провести, может хип закончиться. Но тут надо понимать порядок расхода памяти на свою задачу - 200 инсертов (если конечно не блобы в базу пихать) это чепуха.
8 авг 18, 14:40    [21634453]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34645
Korcar
Petro123
Korcar,
Буфер где?
У вас сервлет работает 0,1 сек.
Так?

не так. секунды 3-4
ну и коммить в конце третьей сек. Вопрос в чем?
8 авг 18, 14:49    [21634471]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14623
Korcar
неее, там автоматом записи из файла закидываются в базу. пользователь по большому счету не нужен. суть вопроса в том, не переполнится ли некий буфер, который хранит все екскьютапдейты до применения комита?
какая субд? Многие могут из файлов сами вставлять в таблицы.
8 авг 18, 14:59    [21634497]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
mayton
Member

Откуда: loopback
Сообщений: 37854
Korcar
Когда лучше делать комит в сервлете при добавлении строк в таблицу базы: после каждого экскьютАпдейт или 200 строк заинсертить, а уже потом комит сделать?

Я знаю 2 правила.

1) Коммит должен логически завершать бизнес операцию. Тоесть к примеру
ты формочку физ-лица заполнил и нажал батон ОК. И в БД должны улететь
все данные формочки как insert. И должна быть фиксация через commit
чтоб данные твоей сессии увидели другие сессии.

2) В некоторых случаях при массовой загрузке (batch insert, bulk insert)
размер транзакции берут условно за некое большое число (пачка) в 1000 или 10000
или 1000 000 строк и коммитят через каждую пачку. Это предохраняет базёвый
сегмент отката от переполнения. Но .. вряд-ли ты в сервлете будешь такое делать.
Не сервлетное это дело... батч инсерт.
8 авг 18, 21:46    [21635031]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Kachalov
Korcar
опа! третий вариант. нашёл этот метод, но ни в одном примере его не встречал. чем он такой полезный?

- специально предназначен для многократно повторяющихся запросов (insert, update). Повышает производительность. Проблемы с памятью те же - если нужно все в одну транзакцию провести, может хип закончиться. Но тут надо понимать порядок расхода памяти на свою задачу - 200 инсертов (если конечно не блобы в базу пихать) это чепуха.

ага. без блобов и строки не тяжелые, но перспективы разных способов интересны
9 авг 18, 07:01    [21635270]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
Petro123
Korcar
пропущено...

не так. секунды 3-4
ну и коммить в конце третьей сек. Вопрос в чем?

о секундах ты спросил. может это важно. я не знаю
9 авг 18, 07:01    [21635271]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Korcar
Member

Откуда:
Сообщений: 7321
вадя
Korcar
неее, там автоматом записи из файла закидываются в базу. пользователь по большому счету не нужен. суть вопроса в том, не переполнится ли некий буфер, который хранит все екскьютапдейты до применения комита?
какая субд? Многие могут из файлов сами вставлять в таблицы.

mssql, конешн. ну там ещё данных добавить надо
9 авг 18, 07:02    [21635272]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
nastyaa
Member

Откуда:
Сообщений: 332
Korcar,

привет можешь посмотреть ошибку в моем коде( там что то не так в форуме про тхт файл
9 авг 18, 07:03    [21635274]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
nastyaa
Member

Откуда:
Сообщений: 332
Korcar,

я буду тебе очень благодарна
9 авг 18, 07:03    [21635275]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14623
mayton
Я знаю 2 правила.
добавлю 3 правило:
после заполнения каждого поля производить сохранение введённого в базе.
Korcar
там автоматом записи из файла закидываются в базу
к примеру в mysql есть возможность прямо из файла заносить в таблицу: http://www.mysql.ru/docs/man/LOAD_DATA.html
9 авг 18, 07:07    [21635278]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 14623
Korcar
mssql, конешн. ну там ещё данных добавить надо
можно добавлять и и вставке из файла, смотря что добавляется.
9 авг 18, 07:10    [21635279]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
nastyaa
Member

Откуда:
Сообщений: 332
вадя,

здравсвуйте можете помочь мне решить проблему с тхт файлом на форуме(
9 авг 18, 07:10    [21635280]     Ответить | Цитировать Сообщить модератору
 Re: Работа с базой. комит  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34645
Korcar
Petro123
пропущено...
ну и коммить в конце третьей сек. Вопрос в чем?

о секундах ты спросил. может это важно. я не знаю
ещё раз сформулируй вопрос ради чего создал топик.
Записал данные, вставил коммит.
Коммит ставят в конце.
Посередине ставят если записей тысячи, миллионы. У тебя 200.
Вопрос в этом?
9 авг 18, 07:11    [21635282]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5 6 7 8 9   вперед  Ctrl      все
Все форумы / Java Ответить