У меня есть «поисковая система», в которой я работаю. Во время тестирования сайт искал 40 000 записей в традиционной базе данных MySQL для разных критериев, а затем сортирует и отображает каждый на основе общего ранга. Производительность была очень хороша с этим уровнем данных, и в среднем результаты достигали примерно 2-3 секунды.Самый быстрый MySQL-движок для чрезвычайно больших запросов
Чувствуя себя уверенным, я увеличил количество записей в базе данных с 40 000 до примерно 325 000. Теперь для поиска в базе данных требуется около 4 минут. В одном поиске используется ~ 2 ГБ ОЗУ! Кроме того, я получаю предупреждения с сервера :)
Я чувствую, что код такой же оптимизированный, насколько это может реально получить. Если бы я работал над ним еще месяц, я мог бы получить на 1% лучшую производительность. Поэтому мой вопрос: какой самый быстрый MySQL Engine с открытым исходным кодом используется для чрезвычайно больших наборов данных/запросов?
Я читал о MemSQL, который выглядит потрясающе, за исключением того, что он не является бесплатным (или даже близок к доступным). Я не знаю точных цифр доллара, но я слышал 5000 долларов/лицензию/сервер.
Любые идеи, предложения? В настоящее время я использую MyISAM. Я открыт для любой альтернативы, совместимой с MySQL.
Я понимаю, что в определенный момент мне понадобится более мощное оборудование, но на данный момент этого решения нет в карточках.
325 000 строк не особо велики. Однако вы не предоставляете никакой полезной информации, чтобы реально помочь в повышении производительности. –
Я открыт для предоставления любой информации, которая будет полезна. Что вам нужно? – SoWizardly
Примеры запросов, схемы таблиц, немного данных о примерах, каковы предупреждающие сообщения, какие индексы у вас на таблицах будут хорошим началом. – Ghost