Vistas vs Store Procedures

01/03/2005 - 23:17 por SergioT | Informe spam
Hola

Tengo un par de dudas acerca de Desempeño y ventajas haber que opinan

Pregunta 1
Las Vistas no son "tablas" persistentes cierto? solo se crean en memoria
cuando se llama a la vista cierto?
Un Store procedure es una consulta almacenada que se crea cuando se la llama
cierto??

Entonces cual es su diferencia en cuanto a desempeño ?

Pregunta 2
Me conviene mas hacer una consulta sobre una vista que representa ya datos
resumidos? o hacer un Store procedure que haga todo el trabajo de una sola
vez????

Pregunta 3
Que politicas tiene Sql para optimizar las consultas a la BD???? me refiero
a consultas tipo Padre-hijo ??? Hay alguna importancia en el orden en el
cual se colocan las tablas Padre, hijo dentro del FROM???

Pregunta 4
No se por que no me caen bien los INNER , estoy mas acostumbrado con FROM,
la pregunta es: Es mejor utilizar los INNER que la clausula FROM???? o es
indistinto en cuanto a desempeño????

Bueno estas son lagunas dudas que tengo y q seguro uds me pueden ayudar

GRACIAS de antemano
Sergio

Preguntas similare

Leer las respuestas

#1 MAXI
01/03/2005 - 23:56 | Informe spam
Hola vayamos por partes dijo Jack ;-)

Las vistas no son mas ni menos que el guardado de la query, lo cual cuando
llamas a una vista lo que se hace es ejecutar dicha query.
Tambien dentro de las vistas tienes las vistas indexadas donde es como una
tabla casi :-)

El SP es una consulta almacenada y compilada, a la diferencia de la vista
que cada vez que se ejecuta consulta el plan de ejecucion el sp lo guarda en
cache.
La diferencia en desempeño depende, por logica un sp al estar en ram y
precompilado si ejecutas varias veces el mismo sp seria muy optimo, pero las
vistas cada vez que se ejecutan deben calcular el plan lo cual las hace mas
lentas.

Las vistas las podes usar desde dentro de los sp, la ventaja de un sp es que
ademas de la performance tiene un nivel de abstraccion mayor a la de la
vista y ademas permite todo tipo de intrucciones.

La pregunta 3, la politica de sqlserver dependera de como armes tus querys y
de que indices dispongas, si armas mal las querys o no tienes los mejores
indices, entonces el resultado no sera muy eficiente.

Porque usar los INNER, pues nadie te obliga pero es la forma natural que usa
t-sql, ademas Ms recomienda su uso en lugar de FROM donde cierto tipo de
combinaciones pueden tener resultados no esperados, por ej *=* o *= o =*

Mas informacion te invito a que leas tus libros on line :-)



Maxi
Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)

MSN:



"SergioT" escribió en el mensaje
news:%
Hola

Tengo un par de dudas acerca de Desempeño y ventajas haber que opinan

Pregunta 1
Las Vistas no son "tablas" persistentes cierto? solo se crean en memoria
cuando se llama a la vista cierto?
Un Store procedure es una consulta almacenada que se crea cuando se la
llama cierto??

Entonces cual es su diferencia en cuanto a desempeño ?

Pregunta 2
Me conviene mas hacer una consulta sobre una vista que representa ya datos
resumidos? o hacer un Store procedure que haga todo el trabajo de una sola
vez????

Pregunta 3
Que politicas tiene Sql para optimizar las consultas a la BD???? me
refiero a consultas tipo Padre-hijo ??? Hay alguna importancia en el orden
en el cual se colocan las tablas Padre, hijo dentro del FROM???

Pregunta 4
No se por que no me caen bien los INNER , estoy mas acostumbrado con FROM,
la pregunta es: Es mejor utilizar los INNER que la clausula FROM???? o es
indistinto en cuanto a desempeño????

Bueno estas son lagunas dudas que tengo y q seguro uds me pueden ayudar

GRACIAS de antemano
Sergio

Respuesta Responder a este mensaje
#2 SergioT
02/03/2005 - 14:29 | Informe spam
Hola
Gracias por tus respuestas
Y siguiendo tu invitacion te derivo otra pregunta :) q buenos libros on line
conoces acerca de estos temas???

Gracias
Sergio

"MAXI" wrote in message
news:uyy%
Hola vayamos por partes dijo Jack ;-)

Las vistas no son mas ni menos que el guardado de la query, lo cual cuando
llamas a una vista lo que se hace es ejecutar dicha query.
Tambien dentro de las vistas tienes las vistas indexadas donde es como una
tabla casi :-)

El SP es una consulta almacenada y compilada, a la diferencia de la vista
que cada vez que se ejecuta consulta el plan de ejecucion el sp lo guarda
en cache.
La diferencia en desempeño depende, por logica un sp al estar en ram y
precompilado si ejecutas varias veces el mismo sp seria muy optimo, pero
las vistas cada vez que se ejecutan deben calcular el plan lo cual las
hace mas lentas.

Las vistas las podes usar desde dentro de los sp, la ventaja de un sp es
que ademas de la performance tiene un nivel de abstraccion mayor a la de
la vista y ademas permite todo tipo de intrucciones.

La pregunta 3, la politica de sqlserver dependera de como armes tus querys
y de que indices dispongas, si armas mal las querys o no tienes los
mejores indices, entonces el resultado no sera muy eficiente.

Porque usar los INNER, pues nadie te obliga pero es la forma natural que
usa t-sql, ademas Ms recomienda su uso en lugar de FROM donde cierto tipo
de combinaciones pueden tener resultados no esperados, por ej *=* o *= o
=*

Mas informacion te invito a que leas tus libros on line :-)



Maxi
Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)

MSN:



"SergioT" escribió en el mensaje
news:%
Hola

Tengo un par de dudas acerca de Desempeño y ventajas haber que opinan

Pregunta 1
Las Vistas no son "tablas" persistentes cierto? solo se crean en memoria
cuando se llama a la vista cierto?
Un Store procedure es una consulta almacenada que se crea cuando se la
llama cierto??

Entonces cual es su diferencia en cuanto a desempeño ?

Pregunta 2
Me conviene mas hacer una consulta sobre una vista que representa ya
datos resumidos? o hacer un Store procedure que haga todo el trabajo de
una sola vez????

Pregunta 3
Que politicas tiene Sql para optimizar las consultas a la BD???? me
refiero a consultas tipo Padre-hijo ??? Hay alguna importancia en el
orden en el cual se colocan las tablas Padre, hijo dentro del FROM???

Pregunta 4
No se por que no me caen bien los INNER , estoy mas acostumbrado con
FROM, la pregunta es: Es mejor utilizar los INNER que la clausula
FROM???? o es indistinto en cuanto a desempeño????

Bueno estas son lagunas dudas que tengo y q seguro uds me pueden ayudar

GRACIAS de antemano
Sergio





Respuesta Responder a este mensaje
#3 Maxi
02/03/2005 - 15:50 | Informe spam
Hola, los mejores son los book on line de MS donde tienes todo esto muy bien
explicado y son free :-)


Salu2
Maxi


"SergioT" escribió en el mensaje
news:
Hola
Gracias por tus respuestas
Y siguiendo tu invitacion te derivo otra pregunta :) q buenos libros on
line conoces acerca de estos temas???

Gracias
Sergio

"MAXI" wrote in message
news:uyy%
Hola vayamos por partes dijo Jack ;-)

Las vistas no son mas ni menos que el guardado de la query, lo cual
cuando llamas a una vista lo que se hace es ejecutar dicha query.
Tambien dentro de las vistas tienes las vistas indexadas donde es como
una tabla casi :-)

El SP es una consulta almacenada y compilada, a la diferencia de la vista
que cada vez que se ejecuta consulta el plan de ejecucion el sp lo guarda
en cache.
La diferencia en desempeño depende, por logica un sp al estar en ram y
precompilado si ejecutas varias veces el mismo sp seria muy optimo, pero
las vistas cada vez que se ejecutan deben calcular el plan lo cual las
hace mas lentas.

Las vistas las podes usar desde dentro de los sp, la ventaja de un sp es
que ademas de la performance tiene un nivel de abstraccion mayor a la de
la vista y ademas permite todo tipo de intrucciones.

La pregunta 3, la politica de sqlserver dependera de como armes tus
querys y de que indices dispongas, si armas mal las querys o no tienes
los mejores indices, entonces el resultado no sera muy eficiente.

Porque usar los INNER, pues nadie te obliga pero es la forma natural que
usa t-sql, ademas Ms recomienda su uso en lugar de FROM donde cierto tipo
de combinaciones pueden tener resultados no esperados, por ej *=* o *= o
=*

Mas informacion te invito a que leas tus libros on line :-)



Maxi
Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)

MSN:



"SergioT" escribió en el mensaje
news:%
Hola

Tengo un par de dudas acerca de Desempeño y ventajas haber que opinan

Pregunta 1
Las Vistas no son "tablas" persistentes cierto? solo se crean en memoria
cuando se llama a la vista cierto?
Un Store procedure es una consulta almacenada que se crea cuando se la
llama cierto??

Entonces cual es su diferencia en cuanto a desempeño ?

Pregunta 2
Me conviene mas hacer una consulta sobre una vista que representa ya
datos resumidos? o hacer un Store procedure que haga todo el trabajo de
una sola vez????

Pregunta 3
Que politicas tiene Sql para optimizar las consultas a la BD???? me
refiero a consultas tipo Padre-hijo ??? Hay alguna importancia en el
orden en el cual se colocan las tablas Padre, hijo dentro del FROM???

Pregunta 4
No se por que no me caen bien los INNER , estoy mas acostumbrado con
FROM, la pregunta es: Es mejor utilizar los INNER que la clausula
FROM???? o es indistinto en cuanto a desempeño????

Bueno estas son lagunas dudas que tengo y q seguro uds me pueden ayudar

GRACIAS de antemano
Sergio









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