XML vs. Tablas temporales

09/09/2005 - 19:55 por Alonzo | Informe spam
Que es mas pesado para un Servidor SQL, trabajar con un archivo XML o una
tabla temporal con la misma info que un XML????

Preguntas similare

Leer las respuestas

#6 Alejandro Mesa
10/09/2005 - 15:54 | Informe spam
Alonzo,

Aqui tienes un link a un articulo muy interesante. En el se toca el tema del
consumo de memoria cuando usamos documentos xml en un procedimeinto
almacenado.

Optimizing a Stored Procedure
http://www.windowsitpro.com/Article...44205.html


AMB

"Alejandro Mesa" wrote:

Alonzo,

> Entonces... el xml es mejor que las tablas temporales? o en caso de no ser
> asi existe otra forma de remover las tablas temporales en mi stored procedure
> y sustituirlas por algo mas?

Creo que no me explique bien. Primero no puedes declarar variables locales
de tipo text, por lo que si la cantidad de caracteres sobrepasa los 8000
entonces ya no podras crear el documento xml en t-sql. Lo otro es que la
operacion de lectura de un documento xml consume mas tiempo que leer la misma
info guardada en una tabla temporal, ademas a la tabla temporal le podemos
crear indices, no asi al documento xml. Como practica se usa que si vas a
leer el documento xml multiples veces, entonces este se carga en una tabla
temporal para ser usada en lecturas posteriores. No puedo darte una respuesta
unica y tajante, todo depende de que cantidad de filas hablas, si estas
haciendo join de las tablas, etc. Si la cantidad de filas es poca, una buena
practica es usar variables tipo tabla.


AMB

"Alonzo" wrote:

> Alejandro
>
> Entonces... el xml es mejor que las tablas temporales? o en caso de no ser
> asi existe otra forma de remover las tablas temporales en mi stored procedure
> y sustituirlas por algo mas?
>
> Gracias por responder!
>
> "Alejandro Mesa" escribió:
>
> > Alonzo,
> >
> > No puedes declarar variables locales de tipo text. Ademas, si vas a leer
> > estas tablas multiples veces, el rendimineto se vera afectado si comparas
> > leer de las tablas temporales con leer el documento xml con openxml().
> >
> >
> > AMB
> >
> > "Alonzo" wrote:
> >
> > > Veras Maxi...
> > >
> > > Tengo un Stored procedure en SQL Server que utiliza muchas tablas
> > > temporales, y busco optimizarlo, estaba pensando que para poder eliminar las
> > > tabla temporales podria utilizar variables varchar(8000) o text, que guarden
> > > un XML equivalente a los registros que me guardaria cada tabla temporal,
> > > quisiera saber si el xml seria mas ligero para el servidor que una tabla
> > > temporal
> > >
> > > Te agradesco la pronta respuesta!
> > >
> > > Saludos!
> > >
> > > "Maxi" escribió:
> > >
> > > > Depende para que, que buscas hacer?
> > > >
> > > >
> > > > Salu2
> > > > Maxi
> > > >
> > > >
> > > > "Alonzo" escribió en el mensaje
> > > > news:
> > > > > Que es mas pesado para un Servidor SQL, trabajar con un archivo XML o una
> > > > > tabla temporal con la misma info que un XML????
> > > >
> > > >
> > > >
Respuesta Responder a este mensaje
#7 Alonzo
12/09/2005 - 15:55 | Informe spam
Gracias Alejandro por el tip...yo lo reviso para ver en lo que me pueda servir


"Alejandro Mesa" escribió:

Alonzo,

Aqui tienes un link a un articulo muy interesante. En el se toca el tema del
consumo de memoria cuando usamos documentos xml en un procedimeinto
almacenado.

Optimizing a Stored Procedure
http://www.windowsitpro.com/Article...44205.html


AMB

"Alejandro Mesa" wrote:

> Alonzo,
>
> > Entonces... el xml es mejor que las tablas temporales? o en caso de no ser
> > asi existe otra forma de remover las tablas temporales en mi stored procedure
> > y sustituirlas por algo mas?
>
> Creo que no me explique bien. Primero no puedes declarar variables locales
> de tipo text, por lo que si la cantidad de caracteres sobrepasa los 8000
> entonces ya no podras crear el documento xml en t-sql. Lo otro es que la
> operacion de lectura de un documento xml consume mas tiempo que leer la misma
> info guardada en una tabla temporal, ademas a la tabla temporal le podemos
> crear indices, no asi al documento xml. Como practica se usa que si vas a
> leer el documento xml multiples veces, entonces este se carga en una tabla
> temporal para ser usada en lecturas posteriores. No puedo darte una respuesta
> unica y tajante, todo depende de que cantidad de filas hablas, si estas
> haciendo join de las tablas, etc. Si la cantidad de filas es poca, una buena
> practica es usar variables tipo tabla.
>
>
> AMB
>
> "Alonzo" wrote:
>
> > Alejandro
> >
> > Entonces... el xml es mejor que las tablas temporales? o en caso de no ser
> > asi existe otra forma de remover las tablas temporales en mi stored procedure
> > y sustituirlas por algo mas?
> >
> > Gracias por responder!
> >
> > "Alejandro Mesa" escribió:
> >
> > > Alonzo,
> > >
> > > No puedes declarar variables locales de tipo text. Ademas, si vas a leer
> > > estas tablas multiples veces, el rendimineto se vera afectado si comparas
> > > leer de las tablas temporales con leer el documento xml con openxml().
> > >
> > >
> > > AMB
> > >
> > > "Alonzo" wrote:
> > >
> > > > Veras Maxi...
> > > >
> > > > Tengo un Stored procedure en SQL Server que utiliza muchas tablas
> > > > temporales, y busco optimizarlo, estaba pensando que para poder eliminar las
> > > > tabla temporales podria utilizar variables varchar(8000) o text, que guarden
> > > > un XML equivalente a los registros que me guardaria cada tabla temporal,
> > > > quisiera saber si el xml seria mas ligero para el servidor que una tabla
> > > > temporal
> > > >
> > > > Te agradesco la pronta respuesta!
> > > >
> > > > Saludos!
> > > >
> > > > "Maxi" escribió:
> > > >
> > > > > Depende para que, que buscas hacer?
> > > > >
> > > > >
> > > > > Salu2
> > > > > Maxi
> > > > >
> > > > >
> > > > > "Alonzo" escribió en el mensaje
> > > > > news:
> > > > > > Que es mas pesado para un Servidor SQL, trabajar con un archivo XML o una
> > > > > > tabla temporal con la misma info que un XML????
> > > > >
> > > > >
> > > > >
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida