|
|
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
В Oracle лежит таблица логов, она оптимизирована и select по 5000000 занимаю несколько ms проблемы возникают при начитке ее со стороны сервера и отображения на клиенте Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. Что можно здесь подправить? Выполнение занимает уже секунды ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2016, 21:25 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Что можно здесь подправить? - проставь временные метки и будет видно где задержки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2016, 22:09 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-Что можно здесь подправить? - проставь временные метки и будет видно где задержки Бегал в debug задержка тут return tq.setHint(QueryHints.READ_ONLY, HintValues.TRUE).getResultList(); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2016, 22:19 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Я конечно не рассчитываю как напрямую запрос выполнииться в бд по времени Но хотелось бы немного уменьшить время ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2016, 22:20 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, отправляемый sql можешь дать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2016, 22:24 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, Что такое "начитка"? Зачем вы сравниваете значения с помощью like и %? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 07:43 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Blazkowicz Зачем вы сравниваете значения с помощью like и %? Правильно! Несколько лайков, абсолютно ненужных тут, сильно тормозят время выборки. И потом может имеет смысл отказаться от сортировки? Код: java 1. 2. 3. Может быть потом List<...> проще отсортировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 09:46 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-В Oracle лежит таблица логов, она оптимизирована и select по 5000000 занимаю несколько ms с like и % в начале строки + order by Не верю. Даже при индексах по времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 10:33 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-В Oracle лежит таблица логов, она оптимизирована и select по 5000000 занимаю несколько ms проблемы возникают при начитке ее со стороны сервера и отображения на клиенте Приведу аналогию - грузовик досок бригада разгрузит за 10 минут. Если же вначале в кузове разобрать все доски на 1. хвойные или лиственные 2. по длине 3. по ширине 4. по толщие 5. чтобы не было сучков то сколько займет времени разгрузка досок, соответствующих этим критериям? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 10:55 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBez-=Koba=-В Oracle лежит таблица логов, она оптимизирована и select по 5000000 занимаю несколько ms с like и % в начале строки + order by Не верю. Даже при индексах по времени. lile и % в начале строки - а индекс в оракле используется в этом случае ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 11:20 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
lleming, по строке нет здесь наверняка по дате есть, что ТС и имеет ввиду, что выборка оптимизирована. Но выбрать 5 млн. и отсортировать. Ну не будет это меряться в ms. ИМХО ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 11:39 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezНо выбрать 5 млн. вопрос в "выбрать куда"? Пусть выбирает с пагинацией. И тогда сортировка не проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 11:48 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123, пофиг куда. Из кода видно что в условии запроса некоторые поля могут опускаться. Грубо select startTime, FIO и select startTime, login для оптимальной выборки требуют аналогичных индексов. Даже без % и like. Держать кучу индексов под различные варианты запросов просто невозможно. На инсертах затормозишь БД. PS. Уже много раз видел как кто-нибудь выполняет запрос в SQLDeveloper, видит первые 50 строк за 2ms и считает что запрос уже выполнен. И море удивления когда прокручиваешь вниз записи, опа а там тормозульки. И тут до чела доходит: то что он увидел первые строки на экране еще не гарантирует что запрос полностью выполнился. Что-то мне кажется ТС так же оценивает скорость sql запроса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 14:23 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezPS. Уже много раз видел как кто-нибудь выполняет запрос в SQLDeveloper, видит первые 50 строк за 2ms и считает что запрос уже выполнен. И море удивления когда прокручиваешь вниз записи, опа а там тормозульки. И тут до чела доходит: то что он увидел первые строки на экране еще не гарантирует что запрос полностью выполнился. не видел такого ни разу. Там вроде один поток работает. Если не выполнился, то часики тикают и ГУИ замёрзшее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 14:31 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezSQLDeveloper доказать очень просто? только у PL/SQL Developer: - взять запрос с блобами - сузить видимую область до 3-х строк. - запрос выполняется 15 сек. - расширить сплиттер на 15 строк и время возрастёт. Всё у него хорошо работает и прогеры продукта молодцы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 14:34 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123sanBezPS. Уже много раз видел как кто-нибудь выполняет запрос в SQLDeveloper, видит первые 50 строк за 2ms и считает что запрос уже выполнен. И море удивления когда прокручиваешь вниз записи, опа а там тормозульки. И тут до чела доходит: то что он увидел первые строки на экране еще не гарантирует что запрос полностью выполнился. не видел такого ни разу. Там вроде один поток работает. Если не выполнился, то часики тикают и ГУИ замёрзшее. Например ToAD для Oracle тоже быстро выгружает 500 строк, а остальные по запросу. Паджинация со стрелками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:02 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Blazkowicz-=Koba=-, Что такое "начитка"? Зачем вы сравниваете значения с помощью like и %? Не совсем понял, ваш ответ. А как мне искать по условию 'Иван Ив'? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:29 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
SQL2008Blazkowicz Зачем вы сравниваете значения с помощью like и %? Правильно! Несколько лайков, абсолютно ненужных тут, сильно тормозят время выборки. И потом может имеет смысл отказаться от сортировки? Код: java 1. 2. 3. Может быть потом List<...> проще отсортировать? Попробую передлать на локальную сортировку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:30 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBez-=Koba=-В Oracle лежит таблица логов, она оптимизирована и select по 5000000 занимаю несколько ms с like и % в начале строки + order by Не верю. Даже при индексах по времени. Да немного погорячился CriteriaBuilder формирует такой запрос Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Time 45-80 ms Код: java 1. Результат 5004121 (выполняется чуть более секунды, только, что заметил) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:34 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
USER_ACTIONS_LOG_VIEW это View join 2 таблиц Индексы стоят на 1 таблица sesssionKey startTime endTime 2 таблица login lastName (во вьешке USER_ACTIONS_LOG_VIEW FIO - это соединение трех столбцов) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:38 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, Я думаю ты уже сам уже понял что к джаве данный вопрос отношения не имеет. По ораклу наверно надо определиться с порядком столбцов в первом индексе. Потому что запросы по сессии будут проскакивать быстро. А насколько часто они используются реальным юзером? Индекс-то под программиста кажется запилен :)) И не лучше ли выгадать на запросах по startTime? и насколько нужен в 2 таблица login lastName (во вьешке USER_ACTIONS_LOG_VIEW FIO - это соединение трех столбцов) второй столбец в индексе если наверно отношение login к lastName один к одному. Может вообще вначале вытащить логин(ы) из второй таблицы и по вьющке запрашивать условие только по полю login. Ну это так, фантазии мои... ЗЫ Где я че напутал по SQLDev и Toad каюсь. Грешен. Склероз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 16:54 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBez-=Koba=-, Я думаю ты уже сам уже понял что к джаве данный вопрос отношения не имеет. По ораклу наверно надо определиться с порядком столбцов в первом индексе. Потому что запросы по сессии будут проскакивать быстро. А насколько часто они используются реальным юзером? Индекс-то под программиста кажется запилен :)) И не лучше ли выгадать на запросах по startTime? и насколько нужен в 2 таблица login lastName (во вьешке USER_ACTIONS_LOG_VIEW FIO - это соединение трех столбцов) второй столбец в индексе если наверно отношение login к lastName один к одному. Может вообще вначале вытащить логин(ы) из второй таблицы и по вьющке запрашивать условие только по полю login. Ну это так, фантазии мои... ЗЫ Где я че напутал по SQLDev и Toad каюсь. Грешен. Склероз Это разные индексы 1 таблица sesssionKey - indx 1 startTime - indx 2 endTime - indx 3 2 таблица login - indx 4 lastName (во вьешке USER_ACTIONS_LOG_VIEW FIO - это соединение трех столбцов) - indx 5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:39 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Чтобы узнать, использует ли СУБД индекс - надо читать план запроса. Но это совсем не здесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:41 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Это разные индексы дак что с пагинацией? Она важнее ваших индексов на миллионах записей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:42 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-Это разные индексы дак что с пагинацией? Она важнее ваших индексов на миллионах записей. Какая польза от "пагинации" когда order by на все записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:43 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Blazkowicz-=Koba=-, Что такое "начитка"? Зачем вы сравниваете значения с помощью like и %? Не совсем понял, ваш ответ. А как мне искать по условию 'Иван Ив'? Ну хорошо. Хотя ФИО лучше распарсить и хранить в отдельных полях, иначе в поиск запросто попадет Шахрисиван Иванасутра. А LOGIN_NAME тоже может быть 'User Us'? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:48 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Это разные индексы Вангую. На каждый запрос используется только один индекс в каждой таблице. Подумай насчет составного индекса для наиболее частых запросов дак что с пагинацией? Она важнее ваших индексов на миллионах записей. То же мне панацея. Внутри пагинации практически те же запросы. То есть вместо одного большого тормоза получим много средненьких тормозиков ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:05 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBez То же мне панацея. Внутри пагинации практически те же запросы. То есть вместо одного большого тормоза получим много средненьких тормозиков ))) Кто мешает сделать её асинхронной, точнее даже ленивой? Ткнул следующую страницу, она и подгрузилась. А смысл загружать 5 миллионов записей, посмотреть 1 страницу, сказать, ой, 6ля, мне совсем не то нужно и выйти из программы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:14 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBez То есть вместо одного большого тормоза получим много средненьких тормозиков ))) Верно. Вот только не все они сработают, а только те, которые нам нужны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:15 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Так совет убрать order и перенести его на сервер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:30 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
SQL2008-=Koba=-пропущено... Не совсем понял, ваш ответ. А как мне искать по условию 'Иван Ив'? Ну хорошо. Хотя ФИО лучше распарсить и хранить в отдельных полях, иначе в поиск запросто попадет Шахрисиван Иванасутра. А LOGIN_NAME тоже может быть 'User Us'? Логин одно слово ФИО Может быть Иванов Иван Иванчиков Иван Иванушенко Иван вот и идет like '%иван%' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:31 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, Еще раз проблему. Пять лимонов за сек это норм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 18:53 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-, Еще раз проблему. Пять лимонов за сек это норм. Проблема в том, чтоб выполнить sql который формирует CriteriaBuilder напрямую, занимает не очень много времени 40-80 ms А если же все это сделать через сервер и вывести на клиента, то гораздо дольше, я понимаю все начитка преобразования итд, но там более 5 секунд где-то. И второй вопрос возник почему выполнения запроса select count(*) выполняется более 1 секунды? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 19:50 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Проблема в том, чтоб выполнить sql который формирует CriteriaBuilder напрямую, занимает не очень много времени 40-80 ms тебе уже говорили, чтобы ты запустил в IDE этот запрос и перешёл на последнюю запись. Сколько будет времени? Никто не верит в твои 80ms. Скрин давай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 20:54 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
терпел, но уже .... надо работу с данными решать средствами базы, надо изучить sql, прежде чем браться за проект ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:05 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-И второй вопрос возник почему выполнения запроса select count(*) выполняется более 1 секунды? Ответ: Потому что записей много! ... Юмор)) SergINIВ моей жизни встретился один знакомый, который никогда не знал о Count, Sum ... Я спросил его: а как ты вычисляешь кол-во записей в таблице? Ответ: delete from table; Оракл показывает кол-во удалённых "строчек". Rollback; Я даже с ним спорить не стал. Мне его метод реально понравился :) http://www.sql.ru/forum/952250-a/podschitat-kolichestvo-zapisey-v-tablice?hl=??????? ??????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:13 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
вадянадо работу с данными решать средствами базы, он с данными ничего не делает. Он лог показывает). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:16 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-Проблема в том, чтоб выполнить sql который формирует CriteriaBuilder напрямую, занимает не очень много времени 40-80 ms тебе уже говорили, чтобы ты запустил в IDE этот запрос и перешёл на последнюю запись. Сколько будет времени? Никто не верит в твои 80ms. Скрин давай. Какой скрин предоставить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:18 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-И второй вопрос возник почему выполнения запроса select count(*) выполняется более 1 секунды? Ответ: Потому что записей много! ... Юмор)) SergINIВ моей жизни встретился один знакомый, который никогда не знал о Count, Sum ... Я спросил его: а как ты вычисляешь кол-во записей в таблице? Ответ: delete from table; Оракл показывает кол-во удалённых "строчек". Rollback; Я даже с ним спорить не стал. Мне его метод реально понравился :) http://www.sql.ru/forum/952250-a/podschitat-kolichestvo-zapisey-v-tablice?hl=??????? ??????? Долго эту шутку при себе держали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:23 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Какой скрин предоставить? выше же написал. В ide 5 лимонов записей и время на последней записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:35 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-Какой скрин предоставить? выше же написал. В ide 5 лимонов записей и время на последней записи. Так не вернет же 5 лямов Из-за pagination Возвращается максимум 15 записей и 5 лямов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:44 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Total 4354 получение 15 строчек по фильтру http://itmages.ru/image/view/5155089/7eafc8af][img] http://storage4.static.itmages.ru/i/16/1107/s_1478544836_8376241_7eafc8af59.png [/img] Total 2187 получение количество записей с фильтром http://itmages.ru/image/view/5155090/0a7df28d][img] http://storage5.static.itmages.ru/i/16/1107/s_1478544837_6578852_0a7df28d41.png [/img] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:54 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Нормальные урлы http://itmages.ru/image/view/5155102/7eafc8af http://itmages.ru/image/view/5155103/0a7df28d ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 21:55 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Так не вернет же 5 лямов Из-за pagination Возвращается максимум 15 записей и 5 лямов Так. Теперь и ты точно так делай у себя с пагинацией. Первая стр-ка будет за 1-2 сек на клиенте. Что нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 22:06 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123-=Koba=-Так не вернет же 5 лямов Из-за pagination Возвращается максимум 15 записей и 5 лямов Так. Теперь и ты точно так делай у себя с пагинацией. Первая стр-ка будет за 1-2 сек на клиенте. Что нормально. Извиняюсь не совсем понял. что имели ввиду ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 22:09 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Извиняюсь не совсем понял. что имели ввиду Ты писал про "более 5 сек.". Это с пагинацией? Клиент готов? На чём клиент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 22:17 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-Выполнение занимает уже секунды - убрать все фильтры какие есть. - добавить пагинацию на 30-40 записей - проверить сколько времени без всех фильтров занимает вывод первой страницы из 30 записей. Если 1-2 сек, то делать клиента и не забивать голову. Потом добавить фильтры. IMHO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 22:22 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Petro123вадянадо работу с данными решать средствами базы, он с данными ничего не делает. Он лог показывает). лог? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 05:09 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
-=Koba=-SQL2008пропущено... Ну хорошо. Хотя ФИО лучше распарсить и хранить в отдельных полях, иначе в поиск запросто попадет Шахрисиван Иванасутра. А LOGIN_NAME тоже может быть 'User Us'? Логин одно слово ФИО Может быть Иванов Иван Иванчиков Иван Иванушенко Иван вот и идет like '%иван%' А как насчет Селиванова? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 09:46 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
SQL2008 ещё раз знать нада sql, и не будет глупых вопрсов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 10:50 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
вадяSQL2008 ещё раз знать нада sql, и не будет глупых вопрсов ты чё такой агрессивный сегодня? )) вадялог? вроде да -=Koba=-В Oracle лежит таблица логов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:03 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Внесем немного лирики и философии ))) SQL2008Кто мешает сделать её асинхронной, точнее даже ленивой? Ткнул следующую страницу, она и подгрузилась. А смысл загружать 5 миллионов записей, посмотреть 1 страницу, сказать, ой, 6ля, мне совсем не то нужно и выйти из программы? А смысл загружать 5 миллионов записей и сказать: О, это то что мне нужно! Щас я быстро эти 5 миллионов мышкой пролистаю и найду то что мне нужно )))) Petro123- проверить сколько времени без всех фильтров занимает вывод первой страницы из 30 записей. Если 1-2 сек, то делать клиента и не забивать голову. Потом добавить фильтры. Примерно то же вопрос. Что будет делать юзер с полученными данными? Тыкать постранично пока кнопка на мышке не сломается? У меня подобная задача в планах висит тоже с бешеным объемом данных. Точно сколько сказать не могу, но студент мой уже на out of memory налетел ))) Ну вот прилеплю я пагинацию, уйдет вылет по памяти, ну мож запрос соптимизирую, будет побыстрее чуть. И ЧООО? Какая польза от большой кучи мусора, которую хрен разгребешь руками? И не надо писать, что дело программиста реализовать задачу, а что потом будет делать юзер - это его дело. Типа механизм есть, пусть пользуется. Не кажется мне этот ответ корректным. Собствеенно у ТС целевая задача не поставлена. Как и у меня. Вот у меня есть более вожные и интересные задачи, на которые времени и так не хватает. И нахрена тратить время на эту каку? Все вышесказанное мое ИМХО. Пока мое мнение совпадает с: Petro123Если 1-2 сек, то делать клиента и не забивать голову. И опять меня колбасит... пусть 50 записей на странице. 100 тыс страниц. Пестня! Мячта юзера! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:15 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezТыкать постранично пока кнопка на мышке не сломается? ты что? Гугл ни разу не видел? Или его постранично читаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:21 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezИ опять меня колбасит... пусть 50 записей на странице. 100 тыс страниц. Пестня! Мячта юзера! у меня в табличке (с пагинацией) в каждой колонке есть поиск и фильтры и сортировка. Нет проблем. Ищут что надо. Можно сохранять найденное, но пока не просили. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:24 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
авторУ меня подобная задача в планах висит тоже с бешеным объемом данных. Точно сколько сказать не могу, но студент мой уже на out of memory налетел ))) Ну вот прилеплю я пагинацию, уйдет вылет по памяти, ну мож запрос соптимизирую, будет побыстрее чуть. И ЧООО? Какая польза от большой кучи мусора, которую хрен разгребешь руками? И не надо писать, что дело программиста реализовать задачу, а что потом будет делать юзер - это его дело. Типа механизм есть, пусть пользуется. Не кажется мне этот ответ корректным. Собствеенно у ТС целевая задача не поставлена. спрашивается чему учат? после прочтения мату в горле тесно. не знание так и прёт в каждом посте. таблица логов и что какие проблемы произвети выбор в ней? какая пагинация? клиенту надо показать не более 10 строк, если получает больше - не умеет накладывать фильтры и программист не дал такой возможности а про like - это страшо смотреть.... без разницы фио в одном поле или в трёх, всё ищется просто. и конкретно. задача и копейки не стоит , раздули ... и out of memor приплели... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:42 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
год назад уже выясняли - почему у него 5 лимонов в одном логе Логирование ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 11:47 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
вадяSQL2008 ещё раз знать нада sql, и не будет глупых вопрсов Ты о чём, братишка? Об этом? вот и идет like '%иван%' А как насчет Селиванова? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 13:49 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
вадяклиенту надо показать не более 10 строк, если получает больше - не умеет накладывать фильтры и программист не дал такой возможности что я собстно и хотел сказать. Не нужно юзеру в данной задаче 5 млн. Ему нужны конкретные логи, по которым он может решить свою конкретную проблему. вадякакая пагинация? я без понятия зачем эту тему сюда вообще приплели. Не нужна она здесь. вадяа про like - это страшо смотреть.... Где я советовал использовать like? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 14:26 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
sanBezя без понятия зачем эту тему сюда вообще приплели. Не нужна она здесь. если мы про ГУИ, то есть только 2 варианта ограничить выборку на клиента - пагинация и ленивая подгрузка. Вторую я очень редко видел в веб (сложно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 14:30 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
ленивая = бесконечный скроллинг (напр. "ВКонтакте") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 14:32 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. такая комбинация маловероятно, что будет использовать индексы поэтому лучше сделать для полного FIO отдельное поле, для ускорения поиска(в добавок полям имя , фамилия) если идёт поиск по введенному имени /фамилии /отчеству то можно сделать так FIO like '%часть%' and FIO like '%другая часть%' and FIO like '%третья часть%' как правило достаточно трёх - четыре уже точно найдут только 1 запись ну такой поиск организуется только ручками... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 15:13 |
|
||
|
Чтение из БД
|
|||
|---|---|---|---|
|
#18+
вадя Код: sql 1. такая комбинация маловероятно, что будет использовать индексы поэтому лучше сделать для полного FIO отдельное поле, для ускорения поиска(в добавок полям имя , фамилия) если идёт поиск по введенному имени /фамилии /отчеству то можно сделать так FIO like '%часть%' and FIO like '%другая часть%' and FIO like '%третья часть%' как правило достаточно трёх - четыре уже точно найдут только 1 запись ну такой поиск организуется только ручками... функциональные индексы? Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2016, 15:24 |
|
||
|
|

start [/forum/topic.php?all=1&fid=59&tid=2123523]: |
0ms |
get settings: |
5ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
63ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
102ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 423ms |

| 0 / 0 |
