2010-09-30 3 views
2

Если я хочу получить миллион строк в спящем режиме, как это работает? Будет ли спящий сбой? Как я могу это оптимизировать.Загрузка миллионов строк в спящий режим

+2

Что именно вы пытаетесь достичь путем выборки строк? Перемещение их в другое место? Поиск их? Сообщение о них? Детали помогут. – mattjames

+1

Возможный дубликат [JPA/hibernate больших коллекций] (http://stackoverflow.com/questions/3783301/jpa-hibernate-big-collections) Есть много вопросов по одной теме, пожалуйста. –

+0

1 строка в миллион раз? 1 м 1 раз? – WernerCD

ответ

3

Если вы прочтете один или напишите, он, вероятно, будет работать нормально. Вы уверены, что вы хотите читать 1000 000 строк? Это, скорее всего, займет некоторое время.

Если вы хотите, чтобы все объекты находились в памяти одновременно, вам вполне может быть поставлено под сомнение.

Вы можете оптимизировать его лучше всего, возможно, путем поиска по-другому. Например, вы можете сбросить базу данных с помощью инструментов базы данных гораздо быстрее, чем чтение с помощью спящего режима.

В базе данных вы можете выбрать суммы, максимальные значения и счетчики, не возвращая миллионы строк по сети.

Что именно вы пытаетесь достичь?

1

Принесите только нужные столбцы. Попробуйте в тестовой среде.

5

Обычно вы не использовали бы спящий режим для этого. Если вам нужно выполнить пакетную операцию, используйте пакетные операции sql или hibernate для пакетных операций. Невозможно загрузить миллионы записей для вашего приложения. Ваше приложение с трэш, как gc работает, или, возможно, сбой. должен быть другой вариант.

1

Для этого вам лучше использовать инструменты jdbc от Spring с помощью обработчика строк. Он выполнит запрос и затем выполнит некоторое действие по строке за раз.

Смежные вопросы