Búsqueda de texto completo en MariaDB
  • 26 Apr 2022
  • 1 Minuto para leer

Búsqueda de texto completo en MariaDB


Article Summary

La búsqueda de texto completo (FTS) permite un enfoque sofisticado para la búsqueda de texto en Totara, particularmente dentro del catálogo. Los detalles de cómo configurar esto usando MariaDB se pueden encontrar en esta página.  

Apoyo lingüístico

MariaDB utiliza la recopilación de mayúsculas y minúsculas para la búsqueda de texto completo de forma predeterminada, pero puede especificar una recopilación diferente si es necesario. Por ejemplo:

$CFG->dboptions['ftslanguage'] = 'utf8_unicode_ci';
 $CFG->dboptions['ftslanguage'] = 'utf8mb4_0900_as_ci';
 $CFG->dboptions['ftslanguage'] = 'utf8mb4_de_pb_0900_ai_ci';

MariaDB no admite japonés ni otros idiomas con palabras muy cortas sin espacios intermedios. Puede habilitar la siguiente configuración para obtener un soporte experimental básico de estos idiomas:

$CFG->dboptions['fts3bworkaround'] = true;

Después de realizar cualquiera de estos cambios, vuelva a completar las tablas FTS ejecutando:

php admin/cli/fts_repopulate_tables.php

Longitud mínima del término de búsqueda

El límite de caracteres de búsqueda predeterminado de MariaDB se puede cambiar editando el archivo de configuración, como se muestra a continuación:

[mysqld]
 innodb_ft_min_token_size=2
 ft_min_word_len=2

Detener palabras

Las palabras de detención son un conjunto de palabras que se excluirán del índice y de la consulta de búsqueda. Dependen del idioma que se utilice durante la indexación y la búsqueda, así como de la presencia del diccionario para la instalación de la base de datos. Por ejemplo, si el usuario busca "Hoteles en Wellington", el sistema excluye "en" de la búsqueda.

Puede encontrar más detalles sobre las palabras de detención de MariaDB en: https://mariadb.com/kb/en/library/full-text-index-stopwords/

Búsqueda morfológica

Desafortunadamente, MariaDB no admite el complemento Ngram que se utiliza en MySQL para realizar la derivación de palabras, por lo que no podemos aconsejar en esta etapa cómo habilitar la búsqueda morfológica en MariaDB.

Búsqueda sin acento

De manera predeterminada, MariaDB admite diacríticas, pero depende de la recopilación. Por ejemplo, cuando la recopilación es utf8_general_ci, la consulta de búsqueda que contiene la palabra “första” o “forsta” devolverá un registro que contiene la palabra “första”.

© 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. 


¿Te ha sido útil este artículo?

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.