Kasutaja:Eeroaaremaa/Indekseerimine

Allikas: Vikipeedia

Indekseerimine on osa otsingumootori tööst, mis salvestab andmed ning töötleb neid nii, et neid hiljem kiirelt ja täpselt leida. Otsingumootor töötab kolmes etapis: veebis "roomamine", indekseerimine ning päringutele sobivate vastuste otsimine. Indekseerida saab erinevatel meetoditel, näiteks nn. "raamatu tagakaane moodi indekseerimine" ehk veebilehe indekseerimine tähestikulises järjekorras või kasutades metaandmeid. Tänapäeval on peamised veebi otsingumootorid metaandmete kaudu indekseerimisest lahti öelnud, seoses lehekülgedega arvukusega, mille sisu ja metaandmed ei kattu.[1]

Indekseerimine[muuda | muuda lähteteksti]

Indekseerimise käigus luuakse etteantud andmekogust indeks, mille eesmärk on teha soovitava info leidmine kiireks ning täpseks. Indeksi koostamisele eelneb veebis "roomamine" ehk kõikide võimalike veebilehtede läbi otsimine, millele järgneb leitud info indeksisse paigutamine ehk indekseerimine.

Läbimurde otsingumootorites ja indekseerimises tegid Stanfordi ülikooli tudengid Larry Page ja Sergey Brin kirjutades üheskoos teadustööd teemal "The Anatomy of a Large-Scale Hypertextual Web Search Engine".[2], mis pani aluse ka nende poolt loodud ettevõttele Google. Üheskoos arendati uus indekseerimismeetod, nimega PageRank algoritmi, mis toetub backlinkide olemasolule ehk hüperlinkide omavahelise viitamistele. Nimelt analüüsib algoritm veebis leiduvate hüperlinkide olulisust vaadates, mitu korda on mõnele kindlale hüperlingile viidatud ning seab need hüperlingid tähtsuse järjekorda.

Veebi indekseerimise tööpõhimõte[muuda | muuda lähteteksti]

Veebi indekseerimisel, mis järgneb veebi "roomamisele", on kolm peamist tööetappi, mis on järgmised:

  1. Parsimine ehk süntaksianalüüs -- Parsimise käigus võrreldakse veebilehtedelt leiduvaid sõnesid tavapärases kõnes leiduvate sõnadega. Veebiparsev, mis on disainitud töötama terves veebi ulatuses peab olema oma ülesehituselt äärmiselt paindlik, et hakkama saada võimalikult paljudes erinevates situatsioonides. Näiteks peab parser tuvastama kirjavigu, mitte-ASCII tähemärke ning leidma üles teksti ka siis, kui see peitub sadade üksteiste sees olevates HTML elementides.
  2. Dokumentide indekseerimine barrel-failidesse -- Peale iga dokumendi parsimist kodeeritakse see erinavatesse barrel-failidesse. Barrel-faile kasutatakse, kui leiduvad failid millest ekporditakse ühte või mitut asja. Seega on barrel-failid on viis, kuidas taas-ekportida kogu või osa faili sisust ühte mugavalt kättesaadavasse kohta.[3] Igale dokumendis leitavale sõnale antakse oma ID, ning see lisatakse paisktabelisse. Lisaks sellele salvestatakse antud dokumendist leitud sõna korduste arv järgmistesse barrel-failidesse. Siinkohal on tähtis, et kogu leitud leksikon oleks omavahel jagatud. Seega kasutatakse uute sõnade leidmisel väiksemaid faile, et mitu indekseri saaksid korraga töötada. Kõik uued sõnad lisab leksikoni viimane indekser.
  3. Sorteerimine -- Viimase etapi käigus leitakse üles kõik sõnad nende ID-de ja korduste arvu järgi ning sorteeritakse need nii, et tervel indeksil oleks hiljem võimalik teostada binaarotsing.[4][5]

Inventeeritud indeks[muuda | muuda lähteteksti]

Inventeeritud indeks on sellist tüüpi indeks, mis sisaldab hulka tekstidega, kuhu sõnad tekstides kuuluvad. Inventeeriud indeksi iga element on sõna ja list tekstidest, kus see sõna leidub. Lisaks sellele võib inventeeritud indeks sisaldada ka sõna asukoha infot tekstis.[6]

Näide inventeeritud indeksist:

Otsime otsingumootorist järgmiseid lauseid: "mehed ei nuta", "sind ei iial unusta", "eile nägin eestimaad" ja "tõde ja õigus" ning vaatleme meile tagastatud inventeeritud indeksit. (Kõik sõnad on lihtsuse mõttes kirjutatud väikeste tähtedega) Indekseerides võime saada näiteks sellise indeksi:

mehed     (3,8);(4,0)
ei        (2,0);(3,14)
nuta      (3,17)(4,6)
sind      (2,4);(3,5)
iial      (2,8)
unusta    (1,2);(2,12);(3,0)
eile      (1,7) 
nägin     (1,11);(2,35)
eestimaad (1,16)(3,54)

Näitest saame välja lugeda, et sõna "mehed" asub indekseeritud dokumentide seas 3. dokumendis üheksanda tähemärgina ning 4. dokumendis esimese tähemärgina. Kuna meie poolt otsitud lause on "mehed ei nuta" siis võime indeksist otsida lauses olevat järgmist sõna, milleks on "ei". Paneme tähele, et sõna "ei" ei esine 4. dokumendis aga esineb 3. dokumendis eelmise sõna, "mehed", lähedal. Sarnaselt sõnaga "nuta", mis esineb 3. dokumendis eelmise sõna lähedal. Seega oleks 3. dokument kõige parem vaste meie poolt tehtud otsingule.

Vaata ka[muuda | muuda lähteteksti]

Otsingumootor

Otsingumootoritele optimeerimine

Viited[muuda | muuda lähteteksti]

  1. "Indexing the Web | American Society for Indexing". www.asindexing.org. Retrieved 2015-11-25.
  2. Brin, S.; Page, L. (1998). "The anatomy of a large-scale hypertextual Web search engine" (PDF). Computer Networks and ISDN Systems
  3. "Barrel files: to use or not to use ?" Adrian Fâciu, 4. märts 2018
  4. "How Does Indexing Work". Chartio. Vaadatud 21.12.2019.
  5. Brin, S.; Page, L. (1998). "The anatomy of a large-scale hypertextual Web search engine" (PDF). (lehekülg 11)
  6. Black, Paul E. (oktoober 2006). "Dictionary of Algorithms and Data Structures". U.S. National Institute of Standards and Technology. Vaadatud 21. detsember 2019. {{netiviide}}: välislink kohas |väljaanne= (juhend)