Sökning i fulltext
  • 08 Apr 2024
  • 2 Protokoll att läsa

Sökning i fulltext


Article Summary

Fulltextsökning (FTS) möjliggör en sofistikerad metod för textsökning i Totara, särskilt i katalogen.

Istället för vanlig substrängsökning, utnyttjar den FTS-funktioner som tillhandahålls av databassystem för att förbättra sökresultaten på följande sätt:

  • Ordning efter relevans
  • Sök efter fraser även när ord beställs på olika sätt
  • Sökning med språkmedvetenhet
  • Ordformulär och tidsmedveten sökning (var/var/är eller körd/rann)
  • Stöd för Diakritik
  • Morfologisk sökning
  • Delvis sökning från början av orden (t.ex. ”Edu*” kommer att returnera objekt med ordet ”Utbildning”)

Alla dessa fördelar kan avsevärt förbättra användarsökupplevelsen, vilket hjälper till att hitta det mest relevanta innehållet för dem.

Totara utför inte fullständig textsökning i sig, utan utnyttjar funktioner som tillhandahålls av databasmotorer. Detta innebär att förekomsten och prestandan hos någon av dessa funktioner beror enbart på vilken databasmotor som används och hur den är konfigurerad.

Databas FTS minskar kraftigt behovet av infrastruktur overhead krav för tredje part FTS lösningar som Elasticsearch. Men i vissa fall kräver det också ytterligare konfiguration av använda databaser för att aktivera vissa sökfunktioner. Annars kommer endast grundläggande FTS-funktioner att vara tillgängliga. För närvarande stöds endast ett enda språk per webbplats i fulltextsökning. 

Språkstöd

Till skillnad från andra befintliga funktioner för datadefinitionsspråk (DDL) är fulltextsökning språkmedveten. Språket anges när indexet skapas och används av din databas i produktionen av indexet. Det används för att skämma bort ord, ignorera brusord (a, it, etc.) och för andra språkfunktioner som tillhandahålls av fulltextsökningsindexet i din databas.

Totara fulltextsökning stöder endast ett språk. Det bör anges i din config.php-fil, och vi rekommenderar att du ställer in det på ett språk som är kompatibelt med din $CFG→lang . Det faktiska värdet är databasoberoende.

För att ställa in ditt språk, lägg till följande i din config.php:

$CFG->dboptions['ftslanguage'] = 'your language';

Det faktiska värdet är databasberoende.

Sök i jokertecken

Med FTS är det möjligt att söka efter partiella ord. För att göra detta, sätt bara en asterisk (*) efter början av ordet i sökinmatningen. Om du till exempel söker efter ”e du*” kommer du att få tillbaka objekt som innehåller ordet ”utbildning” i dem).

Alla databaser som stöds fungerar med denna funktion och ingen ytterligare konfiguration krävs. Om en viss databas kräver ett annat jokertecken kommer Totara att hantera det för användaren.

Accent okänslig sökning

Generellt, med rätt ordförråd i databasen ordstjälkning kommer att ge både accentuerade och oaccented versioner av ordstam. Men om din databaskonfiguration inte tillåter det kan accenter inaktiveras globalt genom att justera konfigurationsvariabeln:

$CFG→dboptions['ftsaccentsensitivity'] = false;

And running FTS re-populating tables:

php admin/cli/fts_rebuild_indexes.php

Databasspecifik information

För att få ut det mesta av fulltextsökningen måste databasadministratörer följa sin databasdokumentation för att aktivera och konfigurera relevanta databasplugins, installera ordlistor och justera olika databasinställningar.

Dessutom har vi samlat in och tillhandahållit några tips och tricks för följande databaser. Detta är inte en ersättning för officiell databasdokumentation, utan snarare ett urval av exempel som visar hur olika inställningar kan påverka sökresultaten. 

Nästa steg

© Copyright 2024 Totara Learning Solutions. All rights reserved. Some content originally obtained via GPLv3 license and continues to be available under GPLv3. All other content is the sole copyright of Totara Learning Solutions. 


Var den här artikeln till hjälp?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.