2011-12-07 6 views
6

Sto cercando di ordinare i risultati in base al numero di "Mi piace".Solr può aumentare i risultati sul numero di "Mi piace" sociali?

La soluzione più ovvia è avere un campo "Mi piace" per ogni riga e reindicizzare il documento per ogni utente che fa clic su "mi piace". Ma la reindicizzazione di documenti di grandi dimensioni non è pratica in questo caso.


(segue è per il bene di esempio: nessun documenti di grandi dimensioni coinvolte)

Idealmente, vorrei indice sia i dati e le azioni degli utenti in Solr come righe separate.

Le righe di dati (come mostrato di seguito) sono relativamente stabili nel tempo.

id:place_1 
title: ela restaurant 
meta: sea food, chinese food festival 
description: this place... 

I righe azione sono inseriti ogni volta che l'utente clicca su "come".

id:action_43141 
action:like 
user:john 
target:place_1 

id:action_44323 
action:like 
user:doe 
target:place_1 

Come posso aumentare di conseguenza in base al numero di calibro, dato che ogni piace esiste su di essa la propria fila?


So che esistono join nell'imminente Solr 4.0 http://wiki.apache.org/solr/Join. Ma migliorerebbe i punteggi basati sul numero numero delle righe corrispondenti?

risposta

4

Dai uno sguardo allo ExternalFileField. Al momento non c'è molta documentazione al riguardo, ma vedi this presentation.

+0

destro sul bersaglio :-) Ma aiuto su ExternalFileField è troppo difficile da trovare. Immagino che la tua risposta qui sia relavent http://stackoverflow.com/a/6333828/604511 – aitchnyu

2

prendere anche uno sguardo al click-through rilevanza classifica presentation

+0

Ci sono un certo numero di implementazioni commerciali che supportano il punteggio sociale. – aitchnyu

Problemi correlati