Gracias Maxi Luego les comento de la solucion que encuentre y, si puedo hacer pruebas de performance, tambien les cuento.
Nos vemos Carlos Peix -----Mensaje original----- De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Maxi Accotto Enviado el: Sábado, 27 de Septiembre de 2008 10:16 a.m. Para: [EMAIL PROTECTED] Asunto: [dbms] Full text searcy y XML No se, eso va a depender de como consultas los datos, cuanto le cuesta al motor hacerlo y como quedan los loqueos. Mira, ayer con Mariano en Ms dimos una charla de 2008 y nos acordamos de vos :) (bien claro), hay un tipo nuevo de dato que se llama Sparce column, creo que es lo que necesitas., pero si, es 2008 :) 2008/9/26 Carlos Peix <[EMAIL PROTECTED]>: > Hola Maxi, > > Bien, creo que me salvo del caso que mencionas, porque yo actualizo el > XML en bloque sin referir las columnas en el where (en lugar de usar > Xquery o Qpath para actualizar algun elemento). > > Aun asi pensas que puedo tener riesgos de deadlocks? > > Carlos Peix > > -----Mensaje original----- > De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Maxi Accotto > Enviado el: Viernes, 26 de Septiembre de 2008 09:17 a.m. > Para: [EMAIL PROTECTED] > Asunto: [dbms] Full text searcy y XML > > Hola El deadlock se te puede generar porque si tenes que actualizar > algun dato y buscar dentro de el para eso y eso no es optimo las > transaccions seran mas largas de lo comun y podrias estar en > problemas. De hecho en esta semana he estado trabajando en un cliente > que usa asi los XML y los problemas de performance son importantes y no tienen muchos registros. > > Con esto no digo no usar el XML sino que usarlo con criterio, fijate > como te dije AdventureWorks como lo usan > > 2008/9/26 Carlos Peix <[EMAIL PROTECTED]>: >> Hola Maxi, >> >> Ya veo, si 10.000 registros me puede generar problemas entonces >> tendre que tener mucho cuidado. >> >> Te pido que me amplies el tema de los deadlocks, como puedo caer en >> esta situacion con una tabla que tenga un campo XML? >> >> Entiendo que podria caer en un deadlock si necesito bloqueos en mas >> de un objeto en la base de datos, cual seria el otro ademas de la tabla? >> >> Perdona que no te agradeci el articulo de nuestro amigo uruguayo, lo >> estoy leyendo. >> >> Gracias >> >> Carlos Peix >> >> -----Mensaje original----- >> De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Maxi >> Accotto Enviado el: Viernes, 26 de Septiembre de 2008 08:47 a.m. >> Para: [EMAIL PROTECTED] >> Asunto: [dbms] Full text searcy y XML >> >> Hola Carlos, no es que no sea util guardar XML el tema es como lo >> usas, para lo que vos lo queres usar no va a ser nada optimo y podes >> terminar con problemas de lockeos y hasta deadlock. >> Si tenes 10 registros es una cosa, ya si tenes 10.000 no lo usaria asi. >> >> El xml esta piola para extender por ejemplo una tabla o bien guardar >> un documento formado. >> Fijate en la base adventureworks como lo aplico la gente de MS y te >> vas a dar cuenta cual es el fin >> >> >> 2008/9/26 Carlos Peix <[EMAIL PROTECTED]>: >>> Hola Maxi, gracias >>> >>> No queria aburrirlos con los motivos pero ya que preguntan les digo >>> que lo que almaceno en la columna en cuestion es la serializacion >>> XML de >> un objeto. >>> No puedo normalizar las columnas afuera porque el usuario tiene la >>> libertad de definir la estructura de sus objetos. >>> >>> Con respecto a tu frase: "te vas a chocar con la pared porque la >>> base de datos y el XML dentro no estan preparados para eso". Podrias >>> ampliar un poco? Queres decir que las columnas XML no estan pensadas >>> para almacenar XML adentro? >>> >>> Seguramente te entiendo mal. Mariano, en sus articulos en la revista >>> del MUG muestra justamente eso, incluso como usar Xquery y Xpath. >>> >>> Seguramente quisiste decir que, como toda tecnologia, tiene su campo >>> de aplicación. >>> >>> Carlos Peix >>> >>> -----Mensaje original----- >>> De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Maxi >>> Accotto Enviado el: Jueves, 25 de Septiembre de 2008 06:29 p.m. >>> Para: [EMAIL PROTECTED] >>> Asunto: [dbms] Full text searcy y XML >>> >>> 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 >>> ----------------------------------------------------------- >>> >>> >>> >> >> >> >> -- >> ----------------------------------------------------------- >> Microsoft MVP en SQL Server >> Consultor en SQLTotalConsulting >> Excelencia en servicios y consultoria SQLServer >> www.sqltotalconsulting.com >> ----------------------------------------------------------- >> >> >> > > > > -- > ----------------------------------------------------------- > Microsoft MVP en SQL Server > Consultor en SQLTotalConsulting > Excelencia en servicios y consultoria SQLServer > www.sqltotalconsulting.com > ----------------------------------------------------------- > > > -- ----------------------------------------------------------- Microsoft MVP en SQL Server Consultor en SQLTotalConsulting Excelencia en servicios y consultoria SQLServer www.sqltotalconsulting.com -----------------------------------------------------------
