Hola Mariano,
 
Investigando sobre el tema vi lo de los indices primarios y secundarios pero
no le preste mucha atencion porque no creo que me sirvan para esto ya que
los objetos tienen una estructura dispar, por tanto no puedo asumir que
todos tendran un mismo elemento indexable.
 
No tengo tres subclases, de hecho, no son subclases y puedo tener,
potencialmente, cientos de clases, depende de lo que el usuario quiera
definir.
 
En cuanto a tu consejo sobre la eficiencia, se aplica igualmente si tengo
diez mil registros o cien millones? Es decir, vos crees que es inadecuado
por igual en cualquiera de los casos?
 
Gracias por los articulos, voy a mirarlos.
 
Carlos Peix

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Jose Mariano
Alvarez
Enviado el: Jueves, 25 de Septiembre de 2008 06:45 p.m.
Para: [EMAIL PROTECTED]
Asunto: [dbms] Full text searcy y XML


Si lo que quieres es buscar son elementos del XML,debes crear un indice
primario sobre el XML y un secundario sobre los elementos.Igualmente me
parece que el modelo no es optimo como las columnas de las tablas. 
Si tienes tres subclases ( en diseño relacional también hay subclases ) usar
XML para eso no me parece adecuado. Si aun es el modelo correcto porque
debes guardar los datos como XML, sugiero que normalices y lleves esos
atributos a columnas, va a ser mucho mas eficiente si buscas usando por
contenido parcial con fulltext.
. 
Te paso algo de info

XML Best Practices for Microsoft SQL Server 2005
http://msdn.microsoft.com/en-us/library/ms345115.aspx 

Indexes on XML Data Type Columns
http://msdn.microsoft.com/en-us/library/ms191497.aspx





--------------------------------
Atte.
Ing. Jose Mariano Alvarez
SQL Total Consulting


On Thu, Sep 25, 2008 at 18:29, Maxi Accotto <[EMAIL PROTECTED]> wrote:
>
> Hola Carlos, SQL server soporta Xquery y Xpath. Para que esto funcione
> de forma rapida seria bueno tener indices. No se bien para que estas
> usando el campo XML pero me suena a la representacion de un objeto en
> SQL Server, si ese es el objetivo ya te comento que te vas a chocar
> con la pared porque la base de datos y el XML dentro no estan
> preparados para eso.
>
> Leete este link que creo te puede ayudar
>
> http://blogs.solidq.com/ES/glarriera/Lists/Posts/Post.aspx?ID=24
>
> El día 25 de septiembre de 2008 15:03, Carlos Peix
> <[EMAIL PROTECTED]> escribió:
> > Hola DBAs,
> >
> > Tengo el siguiente escenario: registros una tabla, un campo PK, otro que
> > identifica el tipo de registro y otro, de tipo xml, que contiene un xml
> > cuyo esquema depende del tipo de registro. Tambien tengo un FTI sobre
esa
> > tabla, especificamente, sobre el XML.
> >
> > (pseudo DDL)
> > TABLE Registros
> >     Id uniqueidentifier not null (PK),
> >     RecordType int not null,
> >     Data xml not null (FTI)
> >
> > Ahora necesito hacer un full text search sobre esa estructura, segun el
> > siguiente pseudo T-SQL
> >
> > select * from Registros
> > where
> >     ( RecordType = 1 AND CONTAINS( "Nombre", @searchTerm ) ) OR
> >     ( RecordType = 2 AND CONTAINS( "RazonSocial", @searchTerm ) ) OR
> >     ( RecordType = 3 AND CONTAINS( "Observaciones", @searchTerm ) )
> >
> > Donde CONTAINS es una construccion ficticia, lo que quiero decir es:
> >     - Si el tipo de registro es 1 buscame el termino en el campo Nombre
> >     - Si el tipo de registro es 2 buscame el termino en el campo
RazonSocial
> >     - Si el tipo de registro es 3 buscame el termino en el campo
> > Observaciones
> >
> > Estuve leyendo los excelentes articulos de Mariano en la ultima revista
del
> > MUG pero no llego a esto :-(
> >
> > Alguna pista?
> >
> > Carlos Peix
> >
>
>
>
> --
> -----------------------------------------------------------
> Microsoft MVP en SQL Server
> Consultor en SQLTotalConsulting
> Excelencia en servicios y consultoria  SQLServer
> www.sqltotalconsulting.com
> -----------------------------------------------------------
>


Responder a