mboost-dp1

Fri-tekst søgning i egen database


Gå til bund
Gravatar #1 - mfriis
4. jan. 2011 14:37
Hey Newz,
Jeg sidder i et projekt og skal implementere noget fritekst søgning på tværs af godt og vel alt i databasen.

Det er en ret kompleks database så ethvert forslag om "LIKE" i et sql query er ikke brugbart.

Jeg har indtil videre kig på 2 muligheder men vil gerne høre om eventuelle alternativer.

Vi bruger SQL Server 2008, klienten er en .Net4 XBAP løsning som kommunikerer med databasen igennem en WCF service.

Pt har jeg et standard full text index lavet af SQL server samt Lucense (fra Apache) at teste og sammenligne. Er der nogle andre alternativer?

Hvis i foreslår lucene, har nogen af jer så nogle erfarringer med den sammen med .Net?
Gravatar #2 - arne_v
4. jan. 2011 14:45
#1

SQLServer FULLTEXT og Lucene må være de to mest oplagte.

Lucene.NET bruges af Wikipedia, så det må fungere rimeligt.
Gravatar #3 - mfriis
4. jan. 2011 19:38
Har i nogle erfarringer med hvor tit/hvornår lucene skal rebuilde indexet?

Vi får relativt ofte ændringer i databasen og selv om det kun tager godt 15-20 sekunder at bygge indexet så er det for langsomt til at vi kan bygge det hver gang der skal søges (også en ret fjollet løsning)

En opdatering hvert 5. minut betyder man ikke kan søge på data man lige har tastet ind. Det er en fin backup løsning, men jeg vil gerne høre hvordan i plejer at gøre det.
Gravatar #4 - illishar
5. jan. 2011 08:35
Sidst jeg brugte Lucene.NET, var det lidt kringlet at få til at fungere. Ihvertfald hvis man vil søge på "Dansk".
Gravatar #5 - mfriis
5. jan. 2011 08:40
#4 som i ÆØÅ?
Gravatar #6 - illishar
5. jan. 2011 10:07
#5 Ikke just. Det viser sig at fritekst-søgninger er "sprog"-specifikke. Det gør derfor en forskel om det er "dansk" eller engelsk content. (Åbenbart)
Det bruges bl.a. til at frasortere ord som "som", "hen", "i", "på", "den", "det" etc.
Gravatar #7 - illishar
5. jan. 2011 10:11
mFriis (3) skrev:
Har i nogle erfarringer med hvor tit/hvornår lucene skal rebuilde indexet?


Jeg mindes noget med, at man kan tilføje ekstra content til indexet efter at det er blevet built. (Samme princip som DB'er bruger til deres indexes.) Hele indexet skal derfor ikke rebuildes. Men det er noget tid siden, jeg kiggede på det.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login