- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Структура таблицы такая:
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`price` varchar(255) NOT NULL,
`aptek_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2161984 ;
Медленный запрос вида:
use med;
SET timestamp=1352349606;
SELECT * FROM `drug` WHERE name LIKE '%бронхикум элексир%';
Можно ли как то ускорить поиск по таблице, а то в ней 2 млн. записей?
Можно ли как то ускорить поиск по таблице, а то в ней 2 млн. записей?
Полнотекстовый индекс (+ переписать запросы) или сфинкс.
Если есть возможность - я бы второе выбирал.
А что такое полнотекстовый индекс и сфинкс?
http://bit.ly/UxEa0W
Боюсь сделать что-то не правильно, а Вы не подскажите какой запрос мне нужно выполнить для создания этого индекса?
Боюсь, что даже если Вам все подробно расскажу/покажут - Вы наломаете дров.
Обратитесь к спецам и все.
Можно конечно более сложный, но более полезный/перспективный(задел на будущее) - сделать все самому.
Вот алгоритм:
1) делаем бэкап БД
2) http://bit.ly/UxEa0W - идем сюда
3) Делаем попытку создания фуллТекстИндекса.
4) Если все прошло плохо идем пункт 5, если все получилось - пункт 6
5) Восстанавливаем из бэкапа БД(ту живую, которую Вы еще не ломали), переходим пункт 2
6) Поздравляем, Вы только что повысили навык "прямые руки" на 2 lvl
7) Идем на форум и отписываемся о результатах проделанной работы.
Милованов - самого главного Вы не написали :) Какой запрос на добавить то? :)
ALTER TABLE `drug` ADD FULLTEXT ixFull_drug_name(`name`)
как то так.
Предварительно сделайте бэкап.
Спасибо, теперь на подобные запросы уходит от 0,005 до 1 сек.
Поспешил я поблагодарить - не изменилось абсолютно ничего. Запросы так и пишутся в лог медленных запросов (время 2-3 сек) - индекс не заполняется
LIKE - это нечеткий поиск, обычно индекс там что мертвому припарка
Если все так критично с временем запроса, то надо или переписывать запрос или подумать в сторону сфинкс, действительно
---------- Добавлено 09.11.2012 в 12:37 ----------
Как вариант переписывания запроса - делать выборку обычным селектом и искать php stripos()