- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Все ответы - примерные.
Нужен полный доступ.
Но заниматься бесплатно никто не будет (кроме школьников).
По сути, уже 5 примерно раз вам сказали куда копать.
а вы отнекиваетесь и цепляетесь за более простые, но не верные ответы.
Но заниматься бесплатно никто не будет (кроме школьников).
И не нужно заниматься, тем более бесплатно, нужно направление задать нужное :)
Слабое место. Если лимит будет от 500 и выше, тормоза буду очень большие.
т.е. запрос по этим полям?
Именно для этого запроса нужен индекс по одному полю keyword_id
Запрос хороший и попадет в query_cache, дополнительного кеширования не нужно.
Структура точная:
"KEY `keyword_id` (`keyword_id`,`item_id`,`ctr`)" - бесполезный индекс будет только занимать место и тормозить при апдейтах таблицы. `keyword_id`,`item_id` - уникальны, каким боком сюда включать еще ctr?..
'PRIMARY KEY (`keyword_id`,`item_id`)' - желательно снести этот примари кей и пересоздать его как UNIQUE KEY keyword_item (`keyword_id`,`item_id`). Смысл тотже самый, но новые данные в табличку будут вставлятся быстрее.
Интересно было бы после этих изменений сравнить еще скорость InnoDB vs MyISAM.
sidorka, получилось сделать что-нибудь?
Именно для этого запроса нужен индекс по одному полю keyword_id
Зачем? Если там уже и так есть два индекса по этому полю. Как раз если смотреть на этот запрос, то здесь нужен составной индекс для WHERE и ORDER.
Зачем? Если там уже и так есть два индекса по этому полю.
А есть ли два индекса?.. :)
Вопрос к Вам: почему индекс KEY `keyword_id` (`keyword_id`,`item_id`,`ctr`) никогда не будет использоваться и будет висеть мертвым грузом?
По скорости PRIMARY KEY (`keyword_id`,`item_id`) vs keyword_id выиграет keyword_id
Как раз если смотреть на этот запрос, то здесь нужен составной индекс для WHERE и ORDER.
Тут да, возможны варианты, т.к. на разных данных могут поочередно выигрывать, то один индекс, то другой. Нужно проводить замеры именно на боевой базе.
Я имею ввиду индексы keyword_id vs keyword_id, ctr
А есть ли два индекса?..
PRIMARY KEY + KEY `keyword_id`
Вопрос к Вам: почему индекс KEY `keyword_id` (`keyword_id`,`item_id`,`ctr`) никогда не будет использоваться и будет висеть мертвым грузом?
SELECT item_id FROM table WHERE keyword_id = ID
не просто используется, а еще является покрывающем. Другой вопрос, что есть другой ключ - первичный + короче, такой же структуры и mysql явно предпочтет его.
SELECT item_id FROM table WHERE keyword_id = ID ORDER BY ctr
Index (Primay key) + filesort
По скорости PRIMARY KEY (`keyword_id`,`item_id`) vs keyword_id выиграет keyword_id
Возможно. За то по скорости в запросе SELECT item_id WHERE keyword_id=ID выигрывает PRIMARY KEY. И смею предположить что даже с добавлением ORDER BY использования этого индекса будет быстрее простого.
Перешел с перконы на MariaDB - полегчало. С перконой не заладилось как-то - диск грузило сильно, хотя это скорее руки кривые.
Порекомендуйте оптимальный вариант рандомной выборки нескольких записей. Структура та же.
---------- Добавлено 26.02.2015 в 22:09 ----------
По индексам - и так, и сяк пробовал.
Сейчас так, возможно и лишнее что-то
---------- Добавлено 26.02.2015 в 22:11 ----------
Сейчас в таблицу пишется наживую, без накопителя. Вроде держит пока, но все равно придется возвращаться к промежуточному накопителю.