torsdag 14. april 2011

Frokostseminar hos Enonic - søkemotoren Solr

Enonic og BEKK inviterte til frokostseminar 14.04.11 om søkemotor for egne nettsider, med eksempler på implementering av open source-motoren Solr.

Enonic nevnte først en del store kunder som bruker Enonic CMS: NAV (aktuell for oss på Helsebiblioteket), Get (ny), Tine (bra søk, laget så tidlig som 2006), Vinmonopolet (bra søk). Både Enonic og Solr er nå open source. Enonic er klargjort for semantisk web.

Reinert ... fra BEKK:
Alternativ:
  1. Bruker vet hva hun er på jakt etter
  2. Bruker utforsker
  3. Bruker vet ikke hva hun trenger
  4. Bruker vil gjenfinne noe.

Gjør en forhåndsjobb, finn ut hva brukerne egentlig trenger! Søkemotorer ikke gode på grensesnitt og opplevelse. Vanskelige å fininnstille. Bedre å tagge innholdet. Bruk metadata og kodestruktur. Ha en strategi for hvordan bruke metadata.

Teknikker i søkemotorer:
  • stavekontroll
  • stemming
  • lemmatisering
  • ---
  • synonymer
  • forslag
Noen eksempler på organisasjoner med gode søk:
NAV
vw.com
apple.com
nav.no
  • Brukeren vet han trenger arbeidsledighetstrygd, søket vet at det også heter dagpenger.
  • Importere synonymordbok
  • hva brukere flest søker på
  • fasettert søk
  • søk som navigasjon - http://www.vinmonopolet.no/ og gå inn på vareutvalget.


Gruppering av treff - flere og flere går bort fra det. Men:
http://www.ask.com/web?qsrc=2990&o=0&l=dir&q=horse

NAV - skille ut lover og regler

Suksesskriterier
- Jobb brukersentrert
- Følg konvensjoner
- Jobb med innholdet
- Planlegg med flere releaser
- Juster kontinuerlig
- Bruk interaksjonsdesigner

Eksempel på enkel løsning: http://solr.enonic.com

Trenger ikke være så dyrt, men man må tenke riktig. Brukerbehov først, ikke funksjonalitet.

Kristoffer Dyrkorn, BEKK

Solr ikke dyr, ikke kompleks, løser søkebehov for de fleste nettsteder av norsk størrelse.
Et forsikringsselskap kalte livsforsikring for personforsikring. Søket måtte håndtere dette.

Googles forslag til bedre søkeord, får se mens du skriver - mye bedre enn å gjøre søket først.
Solr rask nok til å gjøre dette også.

Solr kan ha flere samtidige filtre. Skalérbarhet viktig, eks. Twitter.
Solr kan gjøre geografisk søk, finne avstand mellom to byer etc.

Hvordan integrere Solr og Enonic CMS?

Godt strukturert innhold
Enonic lagrer data i XML - lettest å bruke i kommunikasjon med Solr. Gå til
http://lucene.apache.org/solr og last ned.
Fra Enonic: getContentByQuery --> XML over HTTP -->DataImportHandler i Solr
Finnes flere måter. Lager en side i Enonic med det som er endret siste dag. Må av og til slette alt i Solr og importere alt på nytt, fordi Solr ikke vet hva som er slettet fra Enonic.

Solrs indeks er en tabell med kolonner. Må gjøre en liten tilpasning av dataene for at de skal passe i tabellen. Kan gjøres i CMS eller Solr.


Søk: HTTP Get m/parametre

10-20 ms vanlig responstid for stort nettsted.

Blitt utbredt å tenke mobil først. Unngå forstyrrende resultater. Vær nøye med presentasjonen.
Test de viktige søkeordene. Sørg for at løsningen skalerer. Adgangskontroll bør ligge i CMS-database, tas med over i indeksen.

Solr best egnet for ens eget nettsted, ikke for å indeksere webben.

Spørsmål ang. heterogene datakilder og søk: Bruk entity extraction. Rød, gul, blå er FARGER.
Verktøy: ling-pipe tekstanalyse.
Vær spiss i crawling.

Søkedrevne sider:
www.forskningsrådet.no er delvis søkedrevne sider.

Nynorsk
www.ssb.no bruker Språkrådets nynorske ordliste (ord som er forskjellige fra bokmål). 3000 ord.