orientación búsqueda LIKE %texto% sobre 30.000 registros

11/06/2004 - 13:33 por Julius | Informe spam
Hola a todos ¿qué tal?

A ver, os cuento, que soy no tengo mucha experiencia en el manejo de miles
de registros. Escenario: SQL Server 7.0 al que ataco con Access 2000 desde
un ADP. Tengo una tabla con 30.000 registros y casi 50 campos que crecerá
del orden de unos 5.000 - 6.000 al año. Muchos de esos campos son VARCHAR
extensos e incluso TEXT.

Necesito buscar cadenas de texto en varios de esos campos, y lo hago con
LIKE '%cadena%' ... Esas consultas, medidas desde el Query Analizer, pueden
tardarme entre 25-30 segundos, y me dice en el plan de ejecución estimado
que es el table scan el que consume el 97% del proceso ¿qué se puede hacer
al respecto? ¿Lo estoy haciendo de la mejor manera posible? He leído algo de
los índices de texto ¿merece la pena en este caso? Por otro lado, NO veo el
servicio en los "Servicios de Compatibilidad" del SQL ¿cómo lo instalo?

Y para terminar... luego tengo que desarrollar un pequeño modulito de
búsqueda por intranet, a través de HTML y ASP, de ahí que trato de buscar la
mejor solución si es posible para aplicar después en ambos casos. Estoy un
poco desesperado y agradecería mucho vuestra ayuda

Gracias de antemano

Julius
Zaragoza

Preguntas similare

Leer las respuestas

#1 Maxi
11/06/2004 - 14:18 | Informe spam
Ho,a te recomiendo el uso de Full Text!! aqui tienes un articulo sobre el
tema:

http://www.mug.org.ar/SQL/ArticSQL/237.aspx


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julius" escribió en el mensaje
news:%
Hola a todos ¿qué tal?

A ver, os cuento, que soy no tengo mucha experiencia en el manejo de miles
de registros. Escenario: SQL Server 7.0 al que ataco con Access 2000 desde
un ADP. Tengo una tabla con 30.000 registros y casi 50 campos que crecerá
del orden de unos 5.000 - 6.000 al año. Muchos de esos campos son VARCHAR
extensos e incluso TEXT.

Necesito buscar cadenas de texto en varios de esos campos, y lo hago con
LIKE '%cadena%' ... Esas consultas, medidas desde el Query Analizer,


pueden
tardarme entre 25-30 segundos, y me dice en el plan de ejecución estimado
que es el table scan el que consume el 97% del proceso ¿qué se puede hacer
al respecto? ¿Lo estoy haciendo de la mejor manera posible? He leído algo


de
los índices de texto ¿merece la pena en este caso? Por otro lado, NO veo


el
servicio en los "Servicios de Compatibilidad" del SQL ¿cómo lo instalo?

Y para terminar... luego tengo que desarrollar un pequeño modulito de
búsqueda por intranet, a través de HTML y ASP, de ahí que trato de buscar


la
mejor solución si es posible para aplicar después en ambos casos. Estoy un
poco desesperado y agradecería mucho vuestra ayuda

Gracias de antemano

Julius
Zaragoza







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.698 / Virus Database: 455 - Release Date: 02/06/2004
Respuesta Responder a este mensaje
#2 Julius
11/06/2004 - 20:38 | Informe spam
Gracias Maxi, conocía ese artículo y ahora ya creo que sí me decido a
utilizar este servicio (he leído por ahí que ya se nota mejora de respuesta
a partir de 2.000 registros).

Y aquí viene mi segundo problema... Trabajo con un portátil que posee
Windows 2000 Profesional, por tanto con la versión SQL 7 Desktop, y por lo
que he leído NO es posible instalar el servicio Microsoft Search necesario
para trabajar con FTI ¿alguna opción? ¿Y si instalo MSDE 2000, que ya
incluye el servicio? ¿Podré después crear y administrar los índices de texto
del SQL 7? Pregunto por si alguien tiene experiencia al respecto, antes de
liarla ;)

Y la última, ¿microsoft Search es necesario sólo en la máquina servidor, no?

Seguiré investigando y agradeciendo cualquier ayuda
Buen finde

Julius
Zaragoza


"Maxi" escribió en el mensaje
news:
Ho,a te recomiendo el uso de Full Text!! aqui tienes un articulo sobre el
tema:

http://www.mug.org.ar/SQL/ArticSQL/237.aspx


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Julius" escribió en el mensaje
news:%
> Hola a todos ¿qué tal?
>
> A ver, os cuento, que soy no tengo mucha experiencia en el manejo de


miles
> de registros. Escenario: SQL Server 7.0 al que ataco con Access 2000


desde
> un ADP. Tengo una tabla con 30.000 registros y casi 50 campos que


crecerá
> del orden de unos 5.000 - 6.000 al año. Muchos de esos campos son


VARCHAR
> extensos e incluso TEXT.
>
> Necesito buscar cadenas de texto en varios de esos campos, y lo hago con
> LIKE '%cadena%' ... Esas consultas, medidas desde el Query Analizer,
pueden
> tardarme entre 25-30 segundos, y me dice en el plan de ejecución


estimado
> que es el table scan el que consume el 97% del proceso ¿qué se puede


hacer
> al respecto? ¿Lo estoy haciendo de la mejor manera posible? He leído


algo
de
> los índices de texto ¿merece la pena en este caso? Por otro lado, NO veo
el
> servicio en los "Servicios de Compatibilidad" del SQL ¿cómo lo instalo?
>
> Y para terminar... luego tengo que desarrollar un pequeño modulito de
> búsqueda por intranet, a través de HTML y ASP, de ahí que trato de


buscar
la
> mejor solución si es posible para aplicar después en ambos casos. Estoy


un
> poco desesperado y agradecería mucho vuestra ayuda
>
> Gracias de antemano
>
> Julius
> Zaragoza
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.698 / Virus Database: 455 - Release Date: 02/06/2004


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida