Използваме няколко сървъра със Sphinx като отделен слой, за да осигурим търсенето. Индексаторът работи от cron независимо, за да намали потока от данни и свързването при индексиране при търсене.
Съгласно изискванията трябва да осигурим търсене в реално време (без никакви забавяния), затова решихме да запазим резултата от Sphinx, който се преиндексира на всеки 40 минути и да се смесва с нови действителни данни от модела ActiveRecord въз основа на колона updated_at, всъщност не по-стари от 40мин. Това означава, че имаме действителни данни, без да използваме делта функционалност (която добавя някакъв вид свързване).
Въпросът е как можем да обединим ThinkingSphinx::Search резултат и ActiveRecord данни, за да направим подреждане и пагиниране на целия набор от данни. Възможно ли е това?