powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как предзагрузить индексы в MySQL 4.0 ?
11 сообщений из 11, страница 1 из 1
Как предзагрузить индексы в MySQL 4.0 ?
    #33428462
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
в форуме по PHP мне не помогли , поэтому обращаюсь сюда.

Подскажите, пожалуйста, как в MySQL 4.0 выполнить действие, в более свежих версиях выполняемое командой LOAD INDEX INTO CACHE, т.е. предзагрузить индексы в память для последующего быстрого выполения запроса.
К MySQL обращение происходит из PHP. К сожалению, хостером запрещены PHP-команды выполнения других программ.

Заранее спасибо за любые конструктивные предложения!
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429145
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.-.-.-.-.-mysql_unbuffered_query
а это слово просто покажи своим разработчикам - он сами поймутбыло ли это сделано?
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429264
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmo .-.-.-.-.-mysql_unbuffered_query
а это слово просто покажи своим разработчикам - он сами поймутбыло ли это сделано?
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
еще нет, т.к. выходные
своим разработчкам я уже отписал, в понедельник они будут пробовать.

Но, насколько я вычитал из доки, эта функция мне вряд ли поможет.
Дело в том, что подгрузка индексов с диска длится 10-30 секунд, а сам запрос потом выполняется примерно за 1 секунду. Если повторить похожий запрос (с другими условиями фильтрации) он так же выполняется почти мгновенно. Но как только индексы вытесняются из кэша, любой запрос опять выполняется до 30 секунд и даже дольше.
Насколько я понял, функция mysql_unbuffered_query возвращает управление в программу после получения первой строки. Но, чтобы получить первую строку, нужно все равно подгрузить индексы, что слишком долго. Или я не прав?
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429306
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть, стоит увеличить количество памяти, отводимое под буферы, чобы этой проблемы не возникало?
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429318
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DocAlМожет быть, стоит увеличить количество памяти, отводимое под буферы, чобы этой проблемы не возникало?
Это происходит на сервере хостера.
Я пробовал изменить параметры MySQL - запрещено.
Собственно, самой памяти-то хватает, просто сервер нагружен другими пользователями (т.е. другими сайтами) и мои данные быстро вымываются из кэша.
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429326
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну значит ваши требования к качеству сервиса не соответствуют тому, который может обеспечить виртуальный хостинг. Следует подумать об аренде выделенного. Потому что если у вас регулярно идут запросы к базе, которые в обычных условиях выполняются по 10-30 секунд, и вы некоторыми ухищрениями добьётесь уменьшения этого времени за счёт других пользователей хостинга, велика вероятность, что вас с этого хостинга просто попросят. Соответствующий пункт наверняка есть в договоре.
В любом случае, вы уверены, что вопрос о предварительной загрузке индексов, а не о том, что запрос попадает в Query cache и именно поэтому повторное его выполнение "почти мнгновенно"?
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429334
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DocAlНу значит ваши требования к качеству сервиса не соответствуют тому, который может обеспечить виртуальный хостинг. Следует подумать об аренде выделенного. Потому что если у вас регулярно идут запросы к базе, которые в обычных условиях выполняются по 10-30 секунд, и вы некоторыми ухищрениями добьётесь уменьшения этого времени за счёт других пользователей хостинга, велика вероятность, что вас с этого хостинга просто попросят. Соответствующий пункт наверняка есть в договоре.

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

Соответствующего пункта в договоре я не нашел. Касательно MySQL там есть ограничения по времени выполнения запроса (30 секунд, поэтому некоторые мои запросы убиваются) и по количеству коннектов (64).


В любом случае, вы уверены, что вопрос о предварительной загрузке индексов, а не о том, что запрос попадает в Query cache и именно поэтому повторное его выполнение "почти мнгновенно"?
О загрузке индексов говорит MySQL Administrator.
Пока индексы в кэше - почти мгновенно выполняются не только идентичные запросы, но и запросы с другими параметрами фильтрации и выдающие совсем другие записи.
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429536
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а каким Вы видите решение проблемы? Вот заходит юзер на сайт, ему нужны данные. Что делать? Вдруг индексы в очередной раз вымылись? Юзеру придётся ждать 30 секунд.
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429862
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoа каким Вы видите решение проблемы? Вот заходит юзер на сайт, ему нужны данные. Что делать? Вдруг индексы в очередной раз вымылись? Юзеру придётся ждать 30 секунд.
я собираюсь их "предзагружать" на две страницы ранее в расчете на то, что пока пользователь решает, что ему выбрать, эта "предзагрузка" уже закончится или, как минимум, выполнится в значительной степени.
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33429952
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
предполагается, что он будет думать полминуты? А если больше? Скажем, ушёл покурить. Опять индексы выгрузятся.
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
...
Рейтинг: 0 / 0
Как предзагрузить индексы в MySQL 4.0 ?
    #33430452
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoпредполагается, что он будет думать полминуты? А если больше? Скажем, ушёл покурить. Опять индексы выгрузятся.
Предполагается, что он будет думать не меньше полминуты.
Если ушел покурить надолго, например на пару часов, то сам виноват.
Если не очень надолго, минут на 10-20, то индексы с очень большой вероятностью продеражатся в кэше.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как предзагрузить индексы в MySQL 4.0 ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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