Puede asignar uno de estos tipos de índice y varias opciones a la columna que contiene el texto que se ha de buscar: lingüístico, exacto y Ngram. Debe decidir el tipo de índice que se ha de crear antes de preparar cualquiera de estas columnas para que DB2 Text Extender la utilice. Para ver una descripción más detallada sobre la forma en que cada tipo de índice afecta al proceso lingüístico, consulte el Capítulo 15, Proceso lingüístico para los índices lingüístico y exacto.
Resumen |
---|
DB2 Text Extender ofrece una amplia variedad de opciones de búsqueda, aunque no todas están disponibles para todos los tipos de índice. Consulte la Tabla 7 y la Tabla 8 antes de decidir el tipo de índice que va a utilizar. |
Para un índice lingüístico, se aplica el proceso lingüístico al analizar el texto de cada documento para la indexación. Esto significa que las palabras se reducen a su formato base antes de almacenarse en un índice; el término "ratones", por ejemplo, se almacena en el índice como ratón.
Para una consulta en el índice lingüístico, se aplica el mismo proceso lingüístico a los términos de búsqueda antes de buscar en el índice de texto. Por lo tanto, si busca "ratones", se reduce a su formato base ratón antes de empezar la búsqueda. La Tabla 17 resume la forma en que se extraen los términos para la indexación cuando se utiliza un índice lingüístico.
La ventaja de este tipo de índice es que cualquier variación de un término de búsqueda coincide con cualquier otra variación que aparezca en uno de los documentos de texto indexados. El término de búsqueda ratón coincide con los términos del documento "ratón", "ratones", "RATONES" (mayúsculas), etcétera. De manera similar, el término de búsqueda Ratones coincide con los mismos términos del documento.
Este tipo de índice necesita el menor espacio de disco. Sin embargo, la indexación y la búsqueda pueden tardar más que para un índice exacto.
Los tipos de proceso lingüístico disponibles dependen del idioma del documento. A continuación se ofrece una lista de los tipos:
Consejo |
---|
Los fragmentos de palabras (palabras enmascaradas por caracteres comodín) no pueden reducirse a su formato base. Por lo tanto, si busca estuv%, no encontrará la palabra "estuvo", porque se reduce a su formato base en el índice. Para encontrarla, debe buscar esta%. Las variaciones de palabras que no se han escrito correctamente no se pueden reducir al formato base. Por ejemplo, la palabra en alemán röstete que se indexa correctamente en su formato base, el verbo rösten. Un término de búsqueda röstete o rösteten se normaliza correctamente al formato base rösten y el término se encuentra en el índice. Un término de búsqueda rostete no se puede normalizar a rösten y el término no se encuentra en el índice. |
En un índice exacto, los términos de los documentos de texto se indexan exactamente tal como aparecen en el documento. Por ejemplo, el término de búsqueda ratón puede encontrar "ratón" pero no "ratones" y tampoco "Ratón"; la búsqueda en un índice exacto es sensible a las mayúsculas y minúsculas.
En una consulta, se aplica el mismo proceso a los términos de consulta, que después se comparan con los términos encontrados en el índice. Esto significa que los términos encontrados son exactamente iguales al término de búsqueda. Puede utilizar caracteres de máscara para ampliar la búsqueda; por ejemplo, el término de búsqueda experiment% puede encontrar "experimental", "experimentado", etcétera.
La Tabla 18 ofrece algunos ejemplos de cómo se extraen los términos del texto del documento para la indexación cuando se utiliza un índice exacto.
La ventaja de este tipo de índice es que la búsqueda es más precisa y la indexación y recuperación más rápidas. Puesto que se indexa cada formato diferente y ortografía de cada término, se necesita más espacio de disco que para un índice lingüístico.
Los procesos lingüísticos utilizados para indexar documentos de texto para un índice exacto son:
Separación de palabras y frases
Filtro de palabras de parada.
Un índice Ngram analiza el texto analizando los juegos de caracteres. Este análisis no se basa en ningún diccionario.
Si el texto contiene caracteres DBCS, debe utilizar un índice Ngram. Ningún otro tipo de índice soporta los caracteres DBCS.
Este tipo de índice soporta la búsqueda "similar", lo que significa que puede buscar series de caracteres que sean similares al término de búsqueda especificado. Por ejemplo, una búsqueda de Extender encuentra la palabra escrita incorrectamente Extendrrs. También puede especificar un grado de similitud obligatorio.
Nota: | Incluso aunque utilice la búsqueda similar, los tres primeros caracteres deben coincidir. |
Para realizar una búsqueda sensible a las mayúsculas y minúsculas en un índice Ngram, no es suficiente especificar la palabra clave PRECISE FORM OF en la consulta. Esto es debido a que, normalmente, el índice Ngram no distingue entre los caracteres en mayúsculas y minúsculas indexados. Sin embargo, puede crear un índice Ngram sensible a las mayúsculas y minúsculas, especificando la opción CASE_ENABLED cuando se crea el índice. Después, en la consulta, especifique la palabra clave PRECISE FORM OF.
Cuando se utiliza la opción CASE_ENABLED, el índice necesita más espacio y las búsquedas pueden tardar más.
Consulte el apartado CCSID para ver una lista de los CCSID soportados por los índices Ngram. Un índice Ngram da soporte a una lista de CCSID nativos. Para todos los demás CCSID, los datos se correlacionan de este CCSID con UTF8.
Aunque el tipo de índice Ngram se ha diseñado para utilizarse al indexar documentos DBCS, también se puede utilizar para documentos SBCS. Sin embargo, sólo da soporte a documentos TDS.
Tenga en cuenta que no soporta todas las opciones de sintaxis de búsqueda. Consulte el resumen de normas y restricciones en el Capítulo 12, Sintaxis de los argumentos de búsqueda.
Si decide que el tipo de índice que utiliza no es el adecuado, primero suprima el índice inhabilitando la columna de texto o la tabla de texto y, después, vuelva a crear el índice volviendo a habilitar la columna de texto o la tabla de texto.