Anslut till Senaste Tekniska Nyheter, Bloggar, Recensioner

AnandTech Search går till Google

Sedan webbplatsens start har vi samlat stora mängder innehåll som miljontals människor har kommit att vara beroende av. Vi har många sätt att komma till innehållet, men det snabbaste och enklaste sättet att hitta specifik information är att söka efter det.

AnandTech Search 1.0 (ColdFusion Verity)

Den första versionen av webbplatsen använde en sökserver som ingår i ColdFusion med namnet “Verity”. De flesta har hört talas om Verity; de är en av branschledande inom företagssökningsprogram. Den version av Verity som då ingick i ColdFusion var en lätt version av den kompletta Verity Search-servern. Även om det lyckades ganska bra med att hitta innehåll via booleska sökningar, saknade det flexibilitet och var inte bara en presterande.

AnandTech Search 2.0 (Microsoft FullText Search)

Efter att vi migrerat till Microsoft SQL Server bestämde vi oss för att använda fulltextsökningen som är inbyggd i SQL Server. SQL Server Full Text kom till version 7.0 och låter dig skapa kataloger som kan innehålla flera index på textkolumntyper. Du kan sedan konfigurera Full Text för att indexera data i bakgrunden, eller utföra engångs- eller schemalagd indexering av data.

Det finns dock ett par varningar med Microsoft Full Text-sökning. Det första är att det ger fel när dina sökkriterier innehåller “brusord”. Som standard är fulltextsökning konfigurerad med en lista med “brusord”. Microsoft (och många andra sökmotorer) anser att ord som “eftersom, varit, före, vara, mellan, båda, men, av” är vanliga ord som inte bör ingå i ett index. Naturligtvis kan du enkelt fånga detta fel i din applikation, men realistiskt sett bör sökmotorn bara filtrera bort orden från själva sökfrasen.

Den andra och viktigare frågan är hur Full Text hanterar akronymer och numeriska värden i söksträngar. Vi kom aldrig riktigt till botten med problemet, men även om alla brusord togs bort från Full Text, skulle vissa sökfraser som innehöll akronymer och numeriska data inte ge resultat. Eftersom vår data är full av tekniska akronymer och numeriska modellnummer var detta ett stort problem för oss.