![]() |
|
Модераторы: skyboy |
![]()
|
|
| 02077461 |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 13.7.2005 Репутация: нет Всего: 0 |
В процессе роста нужнд приходиться увеличивать запросы к бд. Вот что написал сегодня:
Ответ сервера:
Может ли кто-то сказать, как быстро такой запрос положит сервер, точнее, сколько нужно записей в таблице, что бы страница с тремя подобными запросами начала заметно тормозить? Так же: что из этого запроса наиболее опасно и чего стоит избегать в дальнейшем?. Спасибо. |
||||
|
|||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Попытка решить проблемы приложения средствами БД...
Сразу вопрос, а нужен ли такой запрос? -------------------- ![]() |
|||
|
||||
| 02077461 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 13.7.2005 Репутация: нет Всего: 0 |
Т.е. вы хотите сказать, что нужно выбрать записи новостей, а потом в цикле по всем записям выполнять 3 запроса?. "Проблема приложения"... хм.. всегда относился к БД как к части приложения. Так же стихами ответить не получится, но запрос нужен, причем мне удобно получить данные таким образом, т.к. потом в цикле можно только сплитить сконкатенированные строки. |
|||
|
||||
| Kesh |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Что-то не клеится в самой формулировке "только сплитить сконкатенированные строки"... Зачем их склеивать, если потом надо резать?
"Неправильно ты, Дядя Федор бутерброд ешь" (с) Ладно, не будем играть в угадывания... Попробуйте сгенерить тестовые данные записей эдак на сто... Во-первых увидите "как быстро такой запрос положит сервер", во-вторых, возможно поймете, что фраза
не совсем применима к написанию продукта... В конечно счете важна ведь скорость работы приложения, а не удобство написания. P.S. Если вы почитаете правила форума, то поймете, что для того, чтобы вам отвечали что-то вразумительное, надо как минимум приводить структуру базы (желательно в виде скрипта с тестовыми данными) + описание, для чего вы все это используете, + кусок кода обработки... P.P.S. Вы заблуждаетесь, что у вас тут три-четыре запроса... Количество запросов будет расти в геометрической прогрессии с количеством элементов в выборке. P.P.P.S Всеми возможными способами избегайте Декарта и Вложенных запросов (что равносильно Декарту)... -------------------- ![]() |
||||
|
|||||
| Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: 20 Всего: 40 |
Во первых - при двух строках в базе нет смысла тестировать - план запроса изменится, как только вы заполните базу..
Во вторых - чтобы узнать что получится забейте туда (ну.. сгенерируйте какнить тестовых данных) строк 100-200, а затем сделайте explain вашзапрос и посмотрите что получится.. Хотя догадывюсь, что получится нехорошо.
Это сообщение отредактировал(а) Бонифаций - 23.10.2008, 00:05 -------------------- Бонифаций. |
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Да-да-да... -------------------- ![]() |
|||
|
||||
| 02077461 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 13.7.2005 Репутация: нет Всего: 0 |
2Бонифаций Огромное спасибо за ваш ответ.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |