Domanda

Stiamo lavorando su siti web per i nostri clienti e vogliamo adottare una soluzione di ricerca che può essere facilmente riutilizzato. Quale dovremmo andare dopo? Dovremmo utilizzare Google Search API o dovremmo usare MS Sql Server indicizzazione full text e il CONTIENE & FREETEXT predicati?

È stato utile?

Soluzione

Usiamo l'indicizzazione di testo completo SQL Server qui su Stack Overflow e funziona abbastanza bene - ma posso solo consiglio per il 2005 e il 2008, le versioni che usiamo su. Ho sentito che è molto peggio nel 2000. Ci sono stranezze (liste stopword, ecc), ma niente di serio. E 'veloce e fa quello che dice sulla latta, per lo più.

Il problema si esegue in con contains() e freetext() è che gli utenti spesso si aspettano per la ricerca a livello di "pagina intera", ala Google , dove tutto ciò che è scritto sulla pagina / schermata è ricercabile. Che non è proprio come funzionano le banche dati, ma gli utenti non si preoccupano di questo. Si preoccupano di risultati e avere aspettative (forse ragionevoli) basata su anni di ricerca web.

Se si prevede di utilizzare la livello di ricerca "pagina intera", mi consiglia vivamente di guardare il Google Search API , o Lucene.NET (supponendo che sei un Microsoft pila sulla base di utilizzo di SQL).

Altri suggerimenti

La cosa buona di ricerca testo completo di SQL Server è la barriera all'ingresso è piuttosto basso (supponendo che si sta già utilizzando SQL Server). StackOverflow lo utilizza per la sua ricerca. Il rovescio della medaglia è che la sua efficacia (o la sua assenza) è uno dei più frequentemente criticato caratteristiche di SO. Tanto che un sacco di gente (me compreso) di default per l'utilizzo di "site: stackoverflow.com ...". In Google

Google Custom Search ha anche una barriera basso per l'ingresso, ma si perde il controllo della frequenza con l'indice viene aggiornato e quanti risultati della ricerca è possibile tornare. Google Site Search è una versione migliore che corregge alcune di queste caratteristiche (come l'indicizzazione su richiesta).

Alla fine cima si ha Google Search Appliance , che è davvero la tua unica opzione Google se i dati non è pubblico.

che è appropriato dipende da quanto spesso i dati devono essere ri-indicizzato, quante richieste si fanno, quanta banda si desidera utilizzare ottenere indicizzati, se i dati sono pubblici e quanto bene avete bisogno dei risultati di ricerca per essere . Non c'è una risposta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top