Reglas de negocio en procedimientos almacenados Vs componentes

09/11/2004 - 23:13 por Vym System | Informe spam
Hola foro, estoy en una empresa donde se esta discutiendo el tema en cuestion.

Los arquitectos de la misma quieren implementar las politicas de negocio
fuera del motor de BDD (todas las politicas) y a mi en lo personal esa idea
no me gusta mucho ya que por lo que he visto y probado, se pierde mucha
performance.

Me gustaria saber vuestras opiniones para poder saber que hacen ustedes!

gracias

Preguntas similare

Leer las respuestas

#11 Maxi
10/11/2004 - 20:19 | Informe spam
Igual ojo Ulises, porque creo que hay algunas confusiones!!

por ej:

si a vos te dicen que debes hacer una actualizacion de algo que debe cumplir
algunas reglas, donde y como lo haces?

Si son objetos seguro que vas a querer llenar los Dataset y luego
recorrerlos para poder hacer la actualizacion y si armar un SP solo usaras y
pensaras en conjunto de resultados!!


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



"ulises" escribió en el mensaje
news:5a5f01c4c758$bafb0900$
De acuerdo con Salvador y Maxi, todavía estoy muy escéptico
a la forma de manejo de los assemblies dentro de Yukon y
Stinger, si no me equivoco Oracle ya podía incorporar
código Java dentro de la BD y no tuvo mayor aceptación
tanto que creo qye ya se quitó esa opción en 10g.

Saludos,
Ulises

Hola Savador y Gux!!

Es cierto que Yukon tendra la posibilidad de meter codigo


.net dentro de
nuestro motor (ya sea por medio de SP o cualquier otra


cuestion)

Yo francamente no lo meteria, por lo menos hasta donde


probe no es nada
eficiente eso :(


...



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.788 / Virus Database: 533 - Release Date: 01/11/2004
Respuesta Responder a este mensaje
#12 ulises
10/11/2004 - 20:46 | Informe spam
Es que precisamente primero tiene que determinarse si es
una regla de negocio o una "regla natural" que debe existir
entre los datos, en ese último caso lo coloco en la capa de
datos (como podría ser tu ejemplo de descontar del stock un
producto vendido), en el otro caso mi primera opción es un
componente en un servidor de aplicaciones, pero como todo
no es algo inamovible y puede tener excepciones.

Saludos,
Ulises

Igual ojo Ulises, porque creo que hay algunas confusiones!!

por ej:

si a vos te dicen que debes hacer una actualizacion de


algo que debe cumplir
algunas reglas, donde y como lo haces?

Si son objetos seguro que vas a querer llenar los Dataset


y luego
recorrerlos para poder hacer la actualizacion y si armar


un SP solo usaras y
pensaras en conjunto de resultados!!
Respuesta Responder a este mensaje
#13 Maxi
10/11/2004 - 21:01 | Informe spam
exacto!! yo hago lo mismo :)

Ahora hay que decir una cosa:

Si se piensa trabajar con datos y se llena un dataset para luego procesar
via cursores y aplicar a cada uno una regla (por ej aumentar el precio de
los articulos de clase A en un 10% cuando su precio sea menor que 100), se
va a poner un poco fulera la cosa a niveles de performance :(. En este caso
yo lo haria con un UPDATE del lado del motor de BDD, es mucho mas eficiente
el proceso :)




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



"ulises" escribió en el mensaje
news:195701c4c75d$f29455b0$
Es que precisamente primero tiene que determinarse si es
una regla de negocio o una "regla natural" que debe existir
entre los datos, en ese último caso lo coloco en la capa de
datos (como podría ser tu ejemplo de descontar del stock un
producto vendido), en el otro caso mi primera opción es un
componente en un servidor de aplicaciones, pero como todo
no es algo inamovible y puede tener excepciones.

Saludos,
Ulises

Igual ojo Ulises, porque creo que hay algunas confusiones!!

por ej:

si a vos te dicen que debes hacer una actualizacion de


algo que debe cumplir
algunas reglas, donde y como lo haces?

Si son objetos seguro que vas a querer llenar los Dataset


y luego
recorrerlos para poder hacer la actualizacion y si armar


un SP solo usaras y
pensaras en conjunto de resultados!!






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.788 / Virus Database: 533 - Release Date: 01/11/2004
Respuesta Responder a este mensaje
#14 ulises
10/11/2004 - 21:47 | Informe spam
Pensando en voz alta, para mí la regla de negocio es la que
me determinará que tipo de artículos considerar, que
porcentaje aplicar y que rango de precios considerar y la
forma como lo actualizaré será a través de un procedimiento
almacenado que me acepte esos tres parámetros.

Saludos,
Ulises

exacto!! yo hago lo mismo :)

Ahora hay que decir una cosa:

Si se piensa trabajar con datos y se llena un dataset para


luego procesar
via cursores y aplicar a cada uno una regla (por ej


aumentar el precio de
los articulos de clase A en un 10% cuando su precio sea


menor que 100), se
va a poner un poco fulera la cosa a niveles de performance


:(. En este caso
yo lo haria con un UPDATE del lado del motor de BDD, es


mucho mas eficiente
el proceso :)




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



"ulises" escribió en el mensaje
news:195701c4c75d$f29455b0$
Es que precisamente primero tiene que determinarse si es
una regla de negocio o una "regla natural" que debe existir
entre los datos, en ese último caso lo coloco en la capa de
datos (como podría ser tu ejemplo de descontar del stock un
producto vendido), en el otro caso mi primera opción es un
componente en un servidor de aplicaciones, pero como todo
no es algo inamovible y puede tener excepciones.

Saludos,
Ulises

Igual ojo Ulises, porque creo que hay algunas confusiones!!

por ej:

si a vos te dicen que debes hacer una actualizacion de


algo que debe cumplir
algunas reglas, donde y como lo haces?

Si son objetos seguro que vas a querer llenar los Dataset


y luego
recorrerlos para poder hacer la actualizacion y si armar


un SP solo usaras y
pensaras en conjunto de resultados!!






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.788 / Virus Database: 533 - Release Date:


01/11/2004


.

Respuesta Responder a este mensaje
#15 Maxi
10/11/2004 - 21:54 | Informe spam
ahi me gusto !!!! excelente definicion, pero mejor que quede claro amigo
Ulises, porque sino podemos caer en la tentacion de llevarnos todo al
cliente procesar registro a registro con una regla y luego volver a aplicar
:(


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



"ulises" escribió en el mensaje
news:5ad301c4c766$723c90e0$
Pensando en voz alta, para mí la regla de negocio es la que
me determinará que tipo de artículos considerar, que
porcentaje aplicar y que rango de precios considerar y la
forma como lo actualizaré será a través de un procedimiento
almacenado que me acepte esos tres parámetros.

Saludos,
Ulises

exacto!! yo hago lo mismo :)

Ahora hay que decir una cosa:

Si se piensa trabajar con datos y se llena un dataset para


luego procesar
via cursores y aplicar a cada uno una regla (por ej


aumentar el precio de
los articulos de clase A en un 10% cuando su precio sea


menor que 100), se
va a poner un poco fulera la cosa a niveles de performance


:(. En este caso
yo lo haria con un UPDATE del lado del motor de BDD, es


mucho mas eficiente
el proceso :)




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



"ulises" escribió en el mensaje
news:195701c4c75d$f29455b0$
Es que precisamente primero tiene que determinarse si es
una regla de negocio o una "regla natural" que debe existir
entre los datos, en ese último caso lo coloco en la capa de
datos (como podría ser tu ejemplo de descontar del stock un
producto vendido), en el otro caso mi primera opción es un
componente en un servidor de aplicaciones, pero como todo
no es algo inamovible y puede tener excepciones.

Saludos,
Ulises

Igual ojo Ulises, porque creo que hay algunas confusiones!!

por ej:

si a vos te dicen que debes hacer una actualizacion de


algo que debe cumplir
algunas reglas, donde y como lo haces?

Si son objetos seguro que vas a querer llenar los Dataset


y luego
recorrerlos para poder hacer la actualizacion y si armar


un SP solo usaras y
pensaras en conjunto de resultados!!






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.788 / Virus Database: 533 - Release Date:


01/11/2004


.






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.788 / Virus Database: 533 - Release Date: 01/11/2004
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida