(C) IBM Corp. 2000
DB2 Net Search Extender Guía de administración y del usuario
Resumen |
---|
- Cuándo
- Cuando ya no se piense realizar búsquedas de texto en esta base de
datos.
- Mandato
- DISABLE DATABASE FOR TEXT
- Autorización
- DBADM sobre la base de datos
|
Cuando DB2 Net Search Extender prepara la base de datos para su que se
pueda utilizar, se realizan ciertos cambios de administración. En esta
sección se describen las funciones que son útiles para invertir este
proceso.
Para inhabilitar la base de datos conectada, utilice el mandato
siguiente:
db2text DISABLE DATABASE FOR TEXT
Cuando se inhabilita una base de datos, también se suprimen los objetos
siguientes:
- Las vistas de catálogo de DB2 Net Search Extender que se crearon cuando se
habilitó la base de datos.
- La declaración de las funciones de SQL de DB2 Net Search Extender
(UDF).
Para inhabilitar la base de datos y eliminar todos los índices de texto,
utilice el mandato siguiente:
db2text DISABLE DATABASE for text force
|
---|
Nota
La inhabilitación de una base de datos no será satisfactoria si existen
índices de texto definidos en la base de datos. Es recomendable
eliminar estos índices uno a uno y, a continuación, comprobar si se producen
problemas. Si se utiliza el mandato disable database for text force,
sólo podrá estar seguro de que se han eliminado las tablas de catálogos de Net
Search Extender de la base de datos.
Sin embargo, si algunos de los índices no se pueden descartar por completo,
puede que todavía haya recursos que se deban eliminar manualmente.
Estos recursos incluyen:
- Archivos en el directorio de índices, de trabajo y de antememoria
- Entradas de planificador en ctedem.dat
- Donde se haya creado un índice utilizando la opción de captura de
duplicación, se deberán suprimir manualmente las entradas IBMSNAP_SIGNAL,
IBMSNAP_PRUNE_SET IBMSNAP_PRUNCNTL de las tablas de la base de datos
remota. Estas entradas se pueden identificar fácilmente utilizando el
mandato APPLY_QUAL="NSE"||<nombre instancia> and TARGET_SERVER=
<nombre base datos>.
En el ejemplo siguiente, la instancia es DB2 y la base de datos
es SAMPLE.
DELETE FROM <ccSchema>.IBMSNAP_SIGNAL
WHERE SIGNAL_INPUT_IN IN
(SELECT MAP_ID FROM <Esquemacc>.IBMSNAP_PRUNCNTL
WHERE APPLY_QUAL= 'NSEDB2' AND TARGET_SERVER= 'SAMPLE');
DELETE FROM <Esquemacc>.IBMSNAP_PRUNCNTL
WHERE APPLY_QUAL= 'NSEDB2' AND TARGET_SERVER= 'SAMPLE';
DELETE FROM <esquemacc>.IBMSNAP_PRUNE_SET
WHERE APPLY_QUAL= 'NSEDB2' AND TARGET_SERVER= 'SAMPLE';
|
Resumen |
---|
- Cuándo
- Una vez para cada columna que contenga texto en que deba realizarse la
búsqueda.
- Mandato
- CREATE INDEX ... FOR TEXT ...
(Vea los ejemplos siguientes)
- Autorización
- CONTROL sobre la tabla
|
Puede crear un índice de texto en tipos de datos soportados, aunque existen
diferentes requisitos para los tipos de datos siguientes:
- Tipos de datos binarios
- Tipos de datos no soportados
- Tipos de datos Datalink
También existen diferentes requisitos para la creación de un índice de
texto para una búsqueda de procedimiento almacenado.
Cuando se crea un índice de texto, también se crean los objetos
siguientes:
- Una tabla de anotaciones cronológicas
- Hace un seguimiento de todas las filas cambiadas en la tabla del
usuario. Tenga en cuenta que, si selecciona la opción Recreate
index on Update o si utiliza tablas de capturas de duplicación, la tabla
de anotaciones cronológicas no se creará.
- Una tabla de sucesos
- Recopila información sobre problemas durante una actualización de los
índices de texto.
- Activadores en la tabla del usuario
- Éstos añaden información a la tabla de anotaciones cronológicas siempre
que se añade, suprime o cambia un documento en la columna. La
información es necesaria para la sincronización del índice la próxima vez que
se produzca la indexación.
Tenga en cuenta que sólo creará activadores si crea una tabla de
anotaciones cronológicas y el índice de texto se crea en una tabla base y no
en las vistas ni en tablas de apodos.
Para optimizar el rendimiento y el espacio en disco, utilice el mandato
CREATE INDEX para especificar un espacio de tabla diferente para
las tablas.
Nota |
---|
La utilización del mandato DB2 LOAD para importar los documentos
puede causar problemas, ya que los activadores no se activan y no se pueden
indexar de forma incremental los documentos cargados.
Por lo tanto, es preferible utilizar el mandato DB2 IMPORT ya
que activa los activadores. |
El ejemplo siguiente crea un índice de texto en la columna de texto
HTMLFILE en la tabla htmltab.
db2text create index DB2EXT.HTMLIDX for text on DB2EXT.HTMLTAB
(HTMLFILE) format HTML
En esta tabla se necesita una clave primaria.
Los valores por omisión para la creación de índices se toman de la vista
db2ext.dbdefaults.
Si se producen errores durante la creación del índice, se añaden a la tabla
de sucesos los llamados sucesos de actualización de índice.
Por ejemplo, cuando no se ha podido encontrar un documento en cola para su
indexación. Para obtener información adicional, consulte el apartado Vista de sucesos.
Para invertir los cambios realizados por CREATE INDEX, utilice
el mandato DROP INDEX. Para obtener esta información,
consulte el apartado Eliminación de un índice de texto.
Para sincronizar el índice de texto con la base de datos, utilice el
mandato siguiente:
db2text update index DB2EXT.HTMLIDX for text
Tenga en cuenta que sólo podrá encontrar documentos después de la
sincronización.
Resumen de la búsqueda |
---|
Dependiendo de las opciones seleccionadas durante la creación del índice,
habrán distintas posibilidades de búsqueda:
- Las funciones de búsqueda escalar SQL funcionan en todos los índices de
texto, excepto en los que se crean en vistas.
- La función de búsqueda de procedimiento almacenado sólo funciona en los
índices de texto creados con una antememoria.
- La función de valor de tabla SQL funciona en todos los índices de texto,
incluyendo los que se crean en vistas.
|
[ Principio de página | Página anterior | Página siguiente | Contenido | Índice ]