никак не можем научить сфинкс искать с логикой “или”, приходится заменять на логику “кроме”, что создает определенные неудобства. Например, если есть а, б, с, и надо искать только по а или только по с, то мы делаем логику “искать везде кроме б”, хотя тот же Эластик умеет искать по логике только а или только с.
по 1ому пункту нужно смотреть - на ваш конфиг, размер полученых индексов, вывод indexer сколько чего проиндексировалось с какой скоростью
по 2ому пункту - нужно смотреть show profile, что отнимает время в запросе. Возможно так же разбить индексы на несколько и использовать distributed индекс с опцией демона dist_threads
Что нужно сделать, чтобы Вы взялись за пункты 1 и 2 ? Я не программист, я заказчик. Я могу передать программисту, чтобы он подготовил для Вас необходимые материалы.
По поводу пункту 3 проблема немного в другом, попрошу программиста более правильно ее сформулировать.