Цитата:от: Самойлов
То есть замена на MySQL в принципе эту проблему, возможно решит. А может и не решить, или вызовет другие проблемы :)
Скорее просто поменяются проблемы. :(
Цитата:от: Самойлов
1) Всевозможные индексы по рейтингам можно убрать, и генерировать эти списки раз в сутки и хранить в отдельных таблицах. Вряд ли кто-то заметит разницу :)
Какие списки? Полмиллиона картинок с несколькими атрибутами (автор, категория, время в т.ч. "все подряд") во всех возможных сочетаниях с сортировками (реки, оценки, оценки ХС, время, количество просмотров, количество комментов, дата последнего коммента) иначе как средствами СУБД и не разрешить :)
Цитата:от: Самойлов
2) Попытаться минимизировать размер индексов. Разделить старые данные и новые.
К этому я плавно и подхожу, но это применимо только к галерее, а 30% нагрузки обеспечивает форум, на котором никакой архив не предусмотришь (в пределах здравого смысла - за месяц не архив, а за полгода накопится столько, что и выделять поздно). Да и в галерее это можно стало только после того как ввел разделение по суткам.
Цитата:от:Самойлов
Время от времени новые перегонять в старые (скажем, те, что старше недели), после чего проводить кластеризацию старых. Новых будет немного, как следствие - индексы небольшие, поиск быстрый. Если надо выбирать сразу из старых и новых, придется делать запрос с UNION из двух наборов таблиц - но это нечасто.
Подробнее
Юнион рождает нетривиальную систему подсчета количеств результатов в выдаче. У нас count() на фотографии почти не делается - для всех сочетаний фильтров по категориям, датам, авторам данные триггерами заносятся в разные места (скажем по каждому дню в каждой категории в отдельную таблицу, количество фотографий автора - в таблице авторов и т.д.), разве что фильтр по автору и категории одновременно выполняется на лету - благо данных мало. Так что в этом случае код усложнится настолько, что ни оптимизировать, ни расширять функциональность будет нереально.
Пока я планирую поставить новый сервер для магазина фотору (фотору тоже тормозит, но на это жалуется отдел продаж :) ), а на старом фоторушном организовать поисковик для клуба - нехай работает медленно и перебирает все 1.500.000 постов каждый раз, зато будет почти онлайновый поиск с шаблонами (ну, +задержка на репликацию), "строками целиком" и прочими радостями от seq scan :) Там же и поиск по темам, по авторам, с учетом цитат и без учета и т.п.
Кстати, раз уж тут есть спецы:
3200уе за Intel 1U case + 2xXeon ~3GHz + 4G RAM + 2x 400G SATA это много? И кто может посоветует поставщика? До этого был только самосбор, но лотерея надоела. Лучше письмом на volod@foto.ru