Исходные данные: есть у нас некий вордпресс. В вордпрессе — несколько десятков тысяч постов. У каждого поста порядка 20-30 тэгов.
Что надо: для любого поста выдавать список постов, скажем, пять штук, с максимально похожим набором тэгов. Сравнение нужно делать исключительно по тэгам.
В чём проблема: в производительности, конечно. Декартово произведение для десятков тысяч записей слишком велико, чтобы просчитывать в лоб.
<===== Про YARPP, я, конечно же, знаю, но он не подходит.

Делаешь функцию разницы между двумя множествами тэгов (как один из вариантов можно над ограниченным множеством тэгов битовую маску сделать), делаешь функциональный индекс, и выбираешь по нему первые 5 записей.
Как-то так. Наверное.
Спасибо за бесполезный совет :)