2009-06-16 11 views
5

Sto utilizzando il codice elencato qui:Sharepoint Ricerca di immobili di ponderazione

http://msdn.microsoft.com/en-us/library/ms553069.aspx

Con una linea supplementare aggiunto come una chiamata a .Update() dopo che la proprietà è impostata in modo da salvare le modifiche, ma anche con un peso di 10.000 risultati di ricerca per la mia proprietà sono ancora in basso, in particolare sotto il titolo. Ci sono altre cose che devono essere fatte per portare la ponderazione a propogare?

Ho anche provato a impostare il titolo, l'autore e il nome file su 0, impostando la proprietà (parole chiave) su 9999 e impostando la normalizzazione della lunghezza su 0. I risultati cambiano leggermente, ma eseguono ricerche con parole chiave che abbinare la proprietà ancora non corrispondono.

Tutti i test sono stati eseguiti con una ricerca per indicizzazione completa, reimpostare IIS e riciclare il pool di app dei servizi condivisi.

Posso fornirti qualsiasi informazione aggiuntiva che potresti richiedere.

Grazie, Stefan

UPDATE (6-19-09): aggiunto una taglia di 500 a questo. Pochissime informazioni su questa funzione sono disponibili online, a quanto pare una buona risposta sarebbe un enorme servizio per la comunità di internet. Probabilmente mi salverà anche una settimana :)

UPDATE 2 (6-19-09): Lo schema è essenzialmente questo: tipo di contenuto del documento sharepoint OOB con campo di testo aggiunto "Parole chiave". Proprietà gestita allegata a ows_keywords (testo).

UPDATE 3 (6-19-09): Sharepoint Search Bench di Codeplex ha aiutato molto la ricerca.

UPDATE 4 (6-19-09): Sono arrivato a una soluzione che comporta la creazione di molte (5 adesso) più proprietà gestite con la stessa proprietà sottoposta a ricerca per indicizzazione. Ogni peso è impostato su qualcosa di insolito (come 9999). Questi fanno abbastanza per rafforzare i risultati della parola chiave in alto. Meno che ideale però. Sto ancora cercando una soluzione.

La soluzione nell'Aggiornamento 4 è ciò che ho concluso. Come ha commentato Lars, la ricerca non è molto flessibile e, nonostante l'offerta di modifiche alle ponderazioni delle proprietà, l'effetto non è sempre quello che ci si aspetterebbe.

+0

Puoi mostrare un piccolo esempio del tuo schema (colonne rilevanti, ecc.) La colonna della proprietà gestita è mappata per essere utilizzata come titolo di un elenco? – Colin

+0

@dlamblin Al momento non ho accesso al server, ma aggiungo il tuo suggerimento come domanda in modo da poterlo contrassegnare come risposta se è giusto. –

+0

@Colin Non sono sicuro di cosa stai chiedendo in termini di schema, la descrizione aggiornata lo copre? –

risposta

1

La proprietà influisce solo positivamente sul punteggio di ranking quando si cercano le parole chiave presenti nella proprietà. Per qualsiasi altra domanda il peso non ha alcun effetto! Per esempio. durante la ricerca delle parole chiave "Ricerca SharePoint", il peso della proprietà del titolo garantisce che il punteggio di ranking sia potenziato per i documenti che hanno queste parole chiave nel titolo. Ma i documenti senza nessuna di queste parole chiave nel titolo non sono potenziati dal peso del titolo. Questo vale per tutte le proprietà gestite di tipo testo.

+0

Questo è vero, ma il mio problema è essere in grado di rendere determinate proprietà specifiche quando viene trovata una corrispondenza. Mi rendo conto che la ponderazione non ha effetto quando non si trova alcuna corrispondenza all'interno della proprietà. Non ha alcun senso. –

+0

Ok, quindi se ho capito bene, fondamentalmente vuoi che la tua proprietà sia l'unica che influenza il punteggio della classifica? –

+0

No. Voglio solo che sia decisivo. Qualsiasi cosa con un valore di proprietà "parole chiave" che contiene la parola chiave di ricerca va in alto. Tutto il resto è ordinato normalmente. –

0

Sarei corretto supponendo che la chiamata .update() venga eseguita alla fine di main()? In caso contrario, provalo, in tal caso assicurati che il programma sia in esecuzione. Immagino anche che strPropertyName sia quello che vuoi. A parte questo, non posso davvero aiutarti.

+0

Aggiornato il sommario. Grazie per il tentativo. –

1

Non è necessario ricrearlo con il peso di una proprietà, è sufficiente ripristinare il servizio di ricerca.

Trovato questo su internet:

Oltre a impostare il peso del gestito proprietà, la proprietà cingolati che viene mappato al proprietà gestita deve anche avere la “includere i valori per questa proprietà nella ricerca indice "casella di controllo impostata su.

Edit: Trovato qui: Larry Kuhn's blog

1

Hai provato a usare solo i pesi in 0-1 gamma? Ad esempio, imposta tutti gli altri pesi delle proprietà su 0,2 e imposta le parole chiave su 0.8. Ho avuto un po 'di problemi con Lucene in questo senso, ed è stato collegato alla magnitudine.

anche se non è mai l'aggiunta di successi in questo campo proprietà per i risultati (provare ad aggiungere un xyzzy parola chiave o qualcosa e cercare di esso), allora è probabilmente non è di peso relativi a tutti, ma piuttosto in relazione al fatto che le parole chiave sono considerati per la vostra ricerca.

+1

SharePoint consente pesi superiori a 1. All'inizio: le proprietà Autore, Nome file e Titolo hanno rispettivamente 8.215, 29.43 e 75.855. –

+1

Così fa Lucene, ma quando ho provato le mie ricerche con LukeAll, ho scoperto che i pesi nella gamma 1000 avevano meno effetto dei pesi nell'intervallo 100. E infine quando ho messo tutti i pesi tra 0 e 1, ho ottenuto risultati più coerenti. Non riesco davvero a spiegarne il motivo, stavo solo armeggiando con le impostazioni. – dlamblin