powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Производительность Hibernate в случае множественного update(delete)
9 сообщений из 9, страница 1 из 1
Производительность Hibernate в случае множественного update(delete)
    #33518634
jdo123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как написать на Hibernate так, чтобы производительность была нормальной в случае множественного update(delete). К примеру, такая простая ситуация - есть таблица СОТРУДНИК и таблица ДЕПАРТАМЕНТ, и сотрудник принадлежит департаменту. Нужно увелечить зп всем сотрдникам из департамента. На SQL это будет просто update emp set salary = 1.1*salary whew dep_id = @dep_id, а на Hibernate как быстрее? Можно вытянуть коллекцию всех сотрудников из департамента, пробежаться по ним, проставить им зп и сохранить -но так это же медленно будет! СкажитЕ, как с этим поступать?
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33518717
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте запросы. Вытаскивать объекты никакого смысла нет.
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33518742
jdo123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М.ГоловановИспользуйте запросы. Вытаскивать объекты никакого смысла нет.
Т.е. вы хотите сказать, что эту часть бизнес-логики следовало бы написать на SQLl, используя JDBC? Но в этом случае ещё ладно, а вообще, тогда таких узких мест может оказатья немало, а мешать SQL и Hibernate - плохо, смешение двух разных идеологий. Или я ошибаюсь?
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33518815
Фотография Кувалдин Роман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jdo123 М.ГоловановИспользуйте запросы. Вытаскивать объекты никакого смысла нет.
Т.е. вы хотите сказать, что эту часть бизнес-логики следовало бы написать на SQLl, используя JDBC? Но в этом случае ещё ладно, а вообще, тогда таких узких мест может оказатья немало, а мешать SQL и Hibernate - плохо, смешение двух разных идеологий. Или я ошибаюсь?

В Apache OJB был объект Query, через который гонялись запросы, не относящиеся к объектно-реляционному маппингу (типа умножить все значения поля на 1.5). Есть подозрение, что в Hibernate тоже есть что-то подобное.
Таким образом, ты используешь средства самого Hibernate для решения задачи.

Фетчить строки в объекты действительно нет никакого смысла - они же вам не нужны на данном этапе.
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33518970
Andrew Bykov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
SQLQuery q = session.createSQLQuery(queryString);
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33519124
iamhere
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jdo123Т.е. вы хотите сказать, что эту часть бизнес-логики следовало бы написать на SQLl, используя JDBC? Но в этом случае ещё ладно, а вообще, тогда таких узких мест может оказатья немало, а мешать SQL и Hibernate - плохо, смешение двух разных идеологий. Или я ошибаюсь?

А без этого все равно никуда не деться в реальной задаче. Единственный вариант сохранить единую идеологию - делать ВСЕ на SQL. Потому что возможности ЛЮБОГО ORM очень ограничены. В задачах, предусматривающих анализ данных, массовые изменения, ORM неэффективен.
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33519619
ppex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну а возвожности SQL вообще безграничны
То что положено юпитеру не положено SQL

задача какая-то подозрительная ... с чегой-то
всем сразу подняли зарплату, и это необходимо
писнуть ???

на самаом деле всё было так сотрудники ассоциируются
с опрделёнными объектами - разрядами инкапсулирую-
щими логику начислений. и ваши массовые update
это просто однократные изменения ставок в этих разрядов

ORM это гибкое счястье - вас же не заставляют работать
c OOCУБД - захотели пишем SQL, предварительно инкапсулировав его,
чтоб в случае чего переделать не затрагивая остальное

о как, а ещё эффективнее массовые update делались на
аппаратных накопителях без всяко ОСи ...
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33519817
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jdo123 М.ГоловановИспользуйте запросы. Вытаскивать объекты никакого смысла нет.
Т.е. вы хотите сказать, что эту часть бизнес-логики следовало бы написать на SQLl, используя JDBC?

Я хочу сказать - Hibernate запросы.
...
Рейтинг: 0 / 0
Производительность Hibernate в случае множественного update(delete)
    #33523144
Matisse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jdo123 М.ГоловановИспользуйте запросы. Вытаскивать объекты никакого смысла нет.
Т.е. вы хотите сказать, что эту часть бизнес-логики следовало бы написать на SQLl, используя JDBC? Но в этом случае ещё ладно, а вообще, тогда таких узких мест может оказатья немало, а мешать SQL и Hibernate - плохо, смешение двух разных идеологий. Или я ошибаюсь?Ты ошибаешься. Читай POJOs in Action, здесь на форуме давали ссылку. Там на каждой странице написано, что делать через Hibernate то, что делается наиболее эффективно SQL, признак тупости разработчика. Идеология Hibernate в том, чтобы при разработке ООПрограмм снять с разработчика рутину работы с базой данных через SQL, но при массовых updateах ничего лучше SQL еще не придумано и Hibernate для этого не предназначался. В крайнем случае в книге советую iBATIS
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Производительность Hibernate в случае множественного update(delete)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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