Hvordan en søkemotor fungerer

Skal vi best forklare hvordan en søkemotor fungerer, er det viktig å få plass: Når du bruker en søkemotor til å finne nettside, så søker du ikke på selve internett, men du søker i indeksen til søkemotoren. Programvare kalt edderkopper går inn på en nettside og samler inn data, så følger den alle linkene på nettsiden og samler inn data fra disse nettsidene, deretter følger de alle linkene på alle disse sidene … og slik fortsetter det. Det skal ikke så mye fantasi til å forstå, at det er ufattelig mye informasjon som skal innhentes (derfor har alle søkemotorer gigantiske serverrom – sjekk Google sine serverrom), og all data er nødt til å lagres på en måte som er hensiktsmessig.

I denne artikkelen skal du lære litt om hvordan en søkemotor er bygd opp, finner og lagrer informasjon og gjengir dette til brukerne av en søkemotor. Mange av de eksterne linkene er på engelsk, men hvis vi kommer opp med informasjon på norsk så vil vi oppdatere artikkelen. Send gjerne inn tips via kontaktskjemaet.

Internett er som en motorvei

Tenk på internett som en motorvei. Langs denne motorveien dukker det opp skilt (linker) til byer (nettsteder) i ulike størrelser og med ulikt innhold. Hvert stopp kan være et unikt dokument (vanligvis en nettside, men kan også være PDF-filer- bilder eller annet). Søkemotorene er nødt til å undersøke hver eneste by, ikke bare langs motorveien, men også de andre «byene» du ikke kan se fra motorveien. Derfor følger søkemotorene linker, fordi dette er den beste måten å finne frem til informasjon på og nettsteder «utenfor kartet».

Lenker lar nemlig søkemotorenes edderkopper (dette er i bunn og grunn automatisert programvare) nå ut til milliarder av sammenhengende dokumenter på den store verdensveven.

En nettside er bygd opp av kode, som gjengir informasjon på en brukervennlig måte til deg og meg. Det søkemotorene gjør, er å stykke opp informasjonen, hente det som er relevant og lagre den ulike steder i massive databaser, slik at de kan bli hentet igjen på et senere tidspunkt- når du søker etter noe av denne informasjonen. For at en søkemotor skal klare den enorme oppgaven med å lagre milliarder av nettsider, og annen informasjon, er selskapene bak søkemotorene nødt til å ha datasentre over hele verden.

Data blir lagret i gigantiske datasentre og svarer på millisekunder

De gigantiske datasentrene er hjem til tusenvis av datamaskiner (servere), som kan gå gjennom store mengder data lynraskt. Når noen søker etter noe i Google eksempelvis, så vil de ha svar øyeblikkelig. En forsinkelse på et par sekunder kan være nok til å vekke misnøye, derfor er det lagt stor vekt på å ha en datastruktur som gir svar på en forespørsel så raskt som mulig.

Søkemotorer gir svar! Når du søker etter noe i en søkemotor, vil den gå gjennom de enorme mengdene data og utføre to oppgaver:

  • Først vil den sørge for du kun får relevante resultater, som gir deg det du er ute etter.
  • Deretter vil den vil rangere resultatene etter populariteten til nettsidene og relevans.

Alle vil være i toppen av en søkemotor, fordi hvis en nettside vises i toppen av søkeresultatene så vil den mest sannsynlig også få mest besøk. Nettsider med mye besøk kan konvertere mer (her kan det være gunstig å lese om CRO –  Conversion Rate Optimization) og tjene mer penger eller få flere brukere – alt etter hva formålet med nettsiden er.

Hvordan søkemotorer avgjør hva som er populært og relevant

For en søkemotor er relevans en nettside med riktige ord på siden om samsvarer med det en bruker er ute etter. I Internetts spede ungdom behøvde ikke søkemotorer å lete etter så mye mer enn dette enkle steget, og søkeresultatene hadde en begrenset verdi. I årenes løp har det kommet bedre metoder til å avgjøre hvordan den kan vises bedre resultater til søk. Det er flere hundre faktorer, som spiller inn, for at nettstedet ditt skal være relevant.

Søkemotorer vil typisk anta, at jo mer populær et nettsted, en side eller et dokument er, jo mer verdifull er informasjonen den viser. Og det er ikke så langt fra sannheten.

Popularitet og relevans blir ikke bestemt manuelt, men noen ganger blir den. Det er heller matematiske formler (algoritmer), som brukes til å sortere «klinten fra hveten», og rangere etter kvalitet. Disse algoritmene vil ofte være avhengig av flere hundre variabler. Innenfor SEO vil dette kalles rangeringsfaktorer.

Sjekk Googles oppdateringer

Uten søkemotorer ville internett vært en jungel – bokstavelig talt

For veldig mange er Google internett.  Det er utgangspunktet de fleste av oss bruker til å finne nye sider, som er relevante for det vi er ute etter. Det kan være å finne beste forbrukslån, nyheter eller informasjon om hva største nettsted i Norge er. Uten søkemotorer ville det vært nærmest umulig å finne frem til noe og internett ville ikke vært tilgjengelig for hvermansen.

Alle søkemotorer har tre hovedfunksjoner:

  • Finne innhold
  • Indeksere, for å spore opp og lagre innhold.
  • Og gjengivelse, for å finne relevant innhold til en bruker.

Alt begynner med å finne innhold. Når en søkemotor samler inn data om en nettside med et formål om å vise dette til brukere, brukes ofte ordet «Crawler». Og en edderkopp crawler etter informasjon (noen ganger kalles edderkoppen crawler eller søkerobot, det er likt ulikt hvilket ord som benyttes, men funksjonen er den samme). Dette involverer veldig mye egentlig, fordi edderkoppen skal skanne en side og finne mye informasjon på hver side:

  • Titler.
  • Bilder.
  • Nøkkelord.
  • Andre linkede sider, internt og eksternt.
  • Designet på siden.
  • Hvor det er reklame?
  • Er det veldig mange linker? er siden spam? osv.

En nettside crawles ved at automatisert programvare besøker side etter side så raskt som mulig, og den bruker linker til å navigere. En edderkopp kan «lese» tusenvis av sider i sekundet!

Edderkoppdiagram

En edderkopp vil samle inn hver eneste link på siden, og det inkluderer også interne links, linker fra menyer, kategorier og mye mer. Dette gjentar den på hver eneste side og siden besøkes gjentatte ganger (etter en tid – uker/måneder) for å se om det har skjedd noen forandringer. Er siden for kompleks, vil edderkoppen gi opp å indeksere nettstedet – viktig poeng! Derfor, se på edderkoppene som dine venner og hjelp søkemotorene med å indeksere nettstedet ditt. Det kan du eksempelvis gjøre ved å sende inn et sidekart til Google og/eller Bing manuelt.

For å sende inn nettstedskart manuelt kan du besøke disse sidene:

Du kan også sende inn siden din manuelt for å komme i indekseringskøen:

Bruker du WordPress kan du installere Yoast SEO helt gratis, som har flere gode funksjoner til nettstedskart, men den er også god til veldig mange andre SEO-oppgaver.

Av ulike årsaker kan det være du ikke vil nettstedet skal være mulig å indeksere, og dermed være søkbart, og det kan du gjøre ved å merke den med «noindex», som sier til edderkoppene at de ikke behøver å sjekke denne siden.

Indeksering er når data samlet inn fra edderkopper blir lagt i en database. I databasen ligger relevant informasjon, som søkemotoren kan hente opp igjen når du søker etter noe. De fleste søkemotorer bruker ulike kriterier til å velge hvile sider som er mest relevante for det du søker etter. Derfor er Google mest suksessfull når det kommer til søkeord – enten unike eller lange søkeord, men andre søkemotorer finnes også. Wolfram Alpha lar deg for eksempel søke etter matematiske formler. 1881 lar deg søke etter adresse og telefonnummer.

Algoritmene som brukes, for å sjekke søkeordet ditt opp mot milliarder av muligheter, er godt beskyttet av flere årsaker. Gode algoritmer gir bedre resultater og hvis ingen vet hva de inneholder slipper du å få spam og relevante sider vises ikke når du søker etter noe. Google er dog veldig flinke til å si hva som kan få et nettsted til å rangere bedre, fordi det gir bedre brukeropplevelse og hjelper de med å finne frem til riktige sider.. Det er ingen som vet nøyaktig hvordan de fungerer og derfor er det viktig å lære om hvilke faktorer som er kjent og hva SEO kan gjøre for deg.

Les mer om dette i SEO og Webdesign

Hvordan en søkemotor er bygd opp

En søkemotor er delt opp flere deler, med ulike designfaktorer og datastrukturer. Designfaktorene lager rammen for arkitekturen til indeksen og bestemmer hvordan indeksen fungerer. Alle delene kombinert viser hvordan en søkemotorindeks fungerer. Det inkluderer:

  • Hvordan informasjon blir lagt til indeksen. Er det nye data eller en oppdatering av eksisterende data?
  • Størrelsen på indeksen. Dette avgjør hvor mye plass indeksen trenger.
  • Lagringsteknikker, som bestemmer hvordan dataene skal lagres. Større filer blir komprimert, mens mindre filer blir filtrert kun.
  • En toleranse for nøyaktighet. Denne bestemmer hvor viktig det er for søkemotoren å være nøyaktig.
  • Hastigheten på et søk. Dette er hvor raskt et ord kan bli funnet når det søkes etter data i indeksen (dette kan du eksempelvis se i Googles Search ved siden av søkeresultatet).
  • Dette er et viktig punkt og inkluderer oppdateringer, nye funksjoner, gamle funksjoner blir valgt fra osv. En søkemotor med hyppig vedlikehold vil fungere bedre i lengden.

Når en søkemotor blir utviklet vil valget ligge mellom flere typer datastrukturer. Datastrukturen er like viktig for en søkemotor som det er for deg å velge hvilken type nettside du vil ha. Hvilken datastruktur som passer best, er avhengig av hva søkemotoren vil vise sine brukere. Vær obs på at dette begynner å bli komplisert, men du kan lese mer om hver enkelt ved å følge linkene under hvert punkt, for bedre å forstå hva de ulike typene indekseringsmetoder innebærer.

  • PAT-tre – Understøtter forespørsler i lineær tid. Strukturen minner om hvordan et tre ser ut med grener.
  • Trestruktur – Ikke helt det samme som Pat-tre, fordi det er en enklere form. Data blir strukturert og katalogisert etter en bestemt orden bygd opp av datastrenger (sekvens av karakterer).
  • Invertert indeks. Lagrer lister av antall ganger søketermer blir gjengitt, i form av hashtabeller eller binære trestrukturer.
  • Link-indeks – Lagrer siteringer eller hyperlenker mellom dokumenter, som så understøtter mulig analyse av viktighet. (sjekk denne linken for å se hvordan Google fungerer).
  • Ngram-indeks. Lagrer sekvenser av store data. Dette understøtter andre typer datagjengivelser og noen ganger text mini.
  • Dokumentmatriks av nøkkelord. Dette brukes i latent semantisk analyse. En dokumentmatriks av nøkkelord vil lagre hvor mange forekomster det er av et ord i en todimensjonal matriks.

Alle disse datastrukturene vil sammen med arkitekturen (eller oppsettet) bygge opp en søkemotorindeks, som er klar til å brukes og gjengir de resultatene en bruker er ute etter. Og det er hele essensen i hvordan en søkemotor fungerer.

Nå er oppgaven din å bruke denne informasjonen til å rangere høyere i Google og andre søkemotorer!