pregunta de diseño (es largo, paciencia)

07/12/2006 - 12:35 por Hugo Gsell | Informe spam
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada uno se
creó una base de datos en sqlserver 2000 sobre un windows 2000 server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios, o la
tabla provincias (ya que cada empleado perteneces a una provincia y
proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas comunes
ó crear un almacen (base de datos) común donde vayan este tipo de tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los controles)
pierdo calidad en diseño bah digo,,, ya no podré ver elegantemente mi
"diagrama" con sus relaciones completas. Y si duplico las tablas "no" y
repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo en una
sola BASE DE DATOS, sin embargo la pregunta que surgió 'inmediatamente' es
en cuanto al rendimiento es decir, se 'banca' el sqlserver 2000, montado
sobre un windows 2000 server, con un server HP Pentium III 650 con 1 GB ram,
hdd (RAID espejado) de 80 gb (que es lo que nos dieron y otra cosa 'al menos
por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que hay
varios de estos sistemas que recién se estan "intentado" migrar a sqlserver,
y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en red)
utilizarán los sistemas. Es decir, no todos utilizan todos los sistemas sino
que sería la cantidad de usuarios finales de todos los sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto no es
así ya que por ej. hay "periodos del mes" en que se trabajará mas (por ej.
sistema empleados para las liquidaciones, etc.) o a veces se dá por ráfagas
en horarios pico del día. Sin embargo, nos da una idea del volumen de
información.
Como no he tenido experiencia previa con sql server no tengo mucha idea de
las prestaciones reales prácticas de este gestor de base de datos (aunque
les paresca de risa -a mi a veces me parece- trabajamos con bases en cliper
con tablas de 1 gb (unas cuantas... y vamos pasando a históricos).
Espero no haberlos cansado y espero además una orientación con respecto a la
pregunta "¿se bancará en sql server 2000 sobre windows 2000 server bajo un
hp pentium III con 1gb de ram con disco 80gb (raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell

Preguntas similare

Leer las respuestas

#1 Javier Loria
07/12/2006 - 13:12 | Informe spam
Hola Hugo:
Sobre tu pregunta especificamente: ¿se bancará en sql server 2000 sobre
windows 2000 server bajo un hp pentium III con 1gb de ram con disco 80gb
(raid -espejado)?:
La respuesta es depende:
a) Usas cursores: Problablemente.
b) Tienes tu base de datos desnormalizada: Probablemente
c) Tienes mucha, mucha lógica de negocios en procedimientos almacenados:
Probablemente.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas sin
una estrategia sensible de indices: Probablemente.
e) Usas el servidor para algo mas que SQL Server: Probablemente.
Habra otras condiciones pero no se me ocurren ahora. Las transacciones
que manejas no deberian ser ningun problema, incluso ese numero de
transacciones al dia no seria problema.
Una nota adicional, si no puedes comprar otro server busca comprar otros
discos (2) para usar el transaction log separado de la BD, esto suele
incrementar sensiblemente el desempeño.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Hugo Gsell" wrote in message
news:
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada uno
se creó una base de datos en sqlserver 2000 sobre un windows 2000 server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios, o
la tabla provincias (ya que cada empleado perteneces a una provincia y
proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas
comunes ó crear un almacen (base de datos) común donde vayan este tipo de
tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los controles)
pierdo calidad en diseño bah digo,,, ya no podré ver elegantemente mi
"diagrama" con sus relaciones completas. Y si duplico las tablas "no" y
repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo en
una sola BASE DE DATOS, sin embargo la pregunta que surgió
'inmediatamente' es en cuanto al rendimiento es decir, se 'banca' el
sqlserver 2000, montado sobre un windows 2000 server, con un server HP
Pentium III 650 con 1 GB ram, hdd (RAID espejado) de 80 gb (que es lo que
nos dieron y otra cosa 'al menos por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que hay
varios de estos sistemas que recién se estan "intentado" migrar a
sqlserver, y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en red)
utilizarán los sistemas. Es decir, no todos utilizan todos los sistemas
sino que sería la cantidad de usuarios finales de todos los sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto no
es así ya que por ej. hay "periodos del mes" en que se trabajará mas (por
ej. sistema empleados para las liquidaciones, etc.) o a veces se dá por
ráfagas en horarios pico del día. Sin embargo, nos da una idea del volumen
de información.
Como no he tenido experiencia previa con sql server no tengo mucha idea de
las prestaciones reales prácticas de este gestor de base de datos (aunque
les paresca de risa -a mi a veces me parece- trabajamos con bases en
cliper con tablas de 1 gb (unas cuantas... y vamos pasando a históricos).
Espero no haberlos cansado y espero además una orientación con respecto a
la pregunta "¿se bancará en sql server 2000 sobre windows 2000 server bajo
un hp pentium III con 1gb de ram con disco 80gb (raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell


Respuesta Responder a este mensaje
#2 Hugo Gsell
07/12/2006 - 16:43 | Informe spam
Gracias... abre un halo de esperanza a lo que yo pensaba aunque tus
apreciaciones (consideraciones) no son tan así:
a) Usas cursores: SI
b) Tienes tu base de datos desnormalizada: NO (minimamente en 1 par de
situaciones)
c) Tienes mucha, mucha lógica de negocios en procedimientos almacenados:
NO la lógica de negocio la manejo en una capa de mi aplicación .net.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas sin
una estrategia sensible de indices: PROBABLEMENTE.
e) Usas el servidor para algo mas que SQL Server: NO.

De todas formas me parece razonable y coherente lo que dices.
Nuevamente gracias.

Hugo A. Gsell

"Javier Loria" escribió en el mensaje
news:
Hola Hugo:
Sobre tu pregunta especificamente: ¿se bancará en sql server 2000 sobre
windows 2000 server bajo un hp pentium III con 1gb de ram con disco 80gb
(raid -espejado)?:
La respuesta es depende:
a) Usas cursores: Problablemente.
b) Tienes tu base de datos desnormalizada: Probablemente
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: Probablemente.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: Probablemente.
e) Usas el servidor para algo mas que SQL Server: Probablemente.
Habra otras condiciones pero no se me ocurren ahora. Las transacciones
que manejas no deberian ser ningun problema, incluso ese numero de
transacciones al dia no seria problema.
Una nota adicional, si no puedes comprar otro server busca comprar
otros discos (2) para usar el transaction log separado de la BD, esto
suele incrementar sensiblemente el desempeño.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Hugo Gsell" wrote in message
news:
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada uno
se creó una base de datos en sqlserver 2000 sobre un windows 2000 server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios, o
la tabla provincias (ya que cada empleado perteneces a una provincia y
proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas
comunes ó crear un almacen (base de datos) común donde vayan este tipo de
tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los
controles) pierdo calidad en diseño bah digo,,, ya no podré ver
elegantemente mi "diagrama" con sus relaciones completas. Y si duplico
las tablas "no" y repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo en
una sola BASE DE DATOS, sin embargo la pregunta que surgió
'inmediatamente' es en cuanto al rendimiento es decir, se 'banca' el
sqlserver 2000, montado sobre un windows 2000 server, con un server HP
Pentium III 650 con 1 GB ram, hdd (RAID espejado) de 80 gb (que es lo que
nos dieron y otra cosa 'al menos por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que
hay varios de estos sistemas que recién se estan "intentado" migrar a
sqlserver, y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en red)
utilizarán los sistemas. Es decir, no todos utilizan todos los sistemas
sino que sería la cantidad de usuarios finales de todos los sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto no
es así ya que por ej. hay "periodos del mes" en que se trabajará mas (por
ej. sistema empleados para las liquidaciones, etc.) o a veces se dá por
ráfagas en horarios pico del día. Sin embargo, nos da una idea del
volumen de información.
Como no he tenido experiencia previa con sql server no tengo mucha idea
de las prestaciones reales prácticas de este gestor de base de datos
(aunque les paresca de risa -a mi a veces me parece- trabajamos con bases
en cliper con tablas de 1 gb (unas cuantas... y vamos pasando a
históricos).
Espero no haberlos cansado y espero además una orientación con respecto a
la pregunta "¿se bancará en sql server 2000 sobre windows 2000 server
bajo un hp pentium III con 1gb de ram con disco 80gb (raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell






Respuesta Responder a este mensaje
#3 Carlos Sacristán
07/12/2006 - 17:05 | Informe spam
Javier, me sorprende el comentario acerca de si tiene "mucha, mucha
lógica de negocios en procedimientos almacenados". ¿A qué te refieres
exactamente?.

Hugo, seguramente si eliminas esos cursores el rendimiento se verá muy
favorablemente afectado


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Hugo Gsell" escribió en el mensaje
news:
Gracias... abre un halo de esperanza a lo que yo pensaba aunque tus
apreciaciones (consideraciones) no son tan así:
a) Usas cursores: SI
b) Tienes tu base de datos desnormalizada: NO (minimamente en 1 par de
situaciones)
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: NO la lógica de negocio la manejo en una capa de mi
aplicación .net.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: PROBABLEMENTE.
e) Usas el servidor para algo mas que SQL Server: NO.

De todas formas me parece razonable y coherente lo que dices.
Nuevamente gracias.

Hugo A. Gsell

"Javier Loria" escribió en el mensaje
news:
Hola Hugo:
Sobre tu pregunta especificamente: ¿se bancará en sql server 2000
sobre windows 2000 server bajo un hp pentium III con 1gb de ram con
disco 80gb (raid -espejado)?:
La respuesta es depende:
a) Usas cursores: Problablemente.
b) Tienes tu base de datos desnormalizada: Probablemente
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: Probablemente.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: Probablemente.
e) Usas el servidor para algo mas que SQL Server: Probablemente.
Habra otras condiciones pero no se me ocurren ahora. Las
transacciones que manejas no deberian ser ningun problema, incluso ese
numero de transacciones al dia no seria problema.
Una nota adicional, si no puedes comprar otro server busca comprar
otros discos (2) para usar el transaction log separado de la BD, esto
suele incrementar sensiblemente el desempeño.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Hugo Gsell" wrote in message
news:
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada uno
se creó una base de datos en sqlserver 2000 sobre un windows 2000
server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios, o
la tabla provincias (ya que cada empleado perteneces a una provincia y
proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas
comunes ó crear un almacen (base de datos) común donde vayan este tipo
de tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los
controles) pierdo calidad en diseño bah digo,,, ya no podré ver
elegantemente mi "diagrama" con sus relaciones completas. Y si duplico
las tablas "no" y repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo en
una sola BASE DE DATOS, sin embargo la pregunta que surgió
'inmediatamente' es en cuanto al rendimiento es decir, se 'banca' el
sqlserver 2000, montado sobre un windows 2000 server, con un server HP
Pentium III 650 con 1 GB ram, hdd (RAID espejado) de 80 gb (que es lo
que nos dieron y otra cosa 'al menos por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que
hay varios de estos sistemas que recién se estan "intentado" migrar a
sqlserver, y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en
red) utilizarán los sistemas. Es decir, no todos utilizan todos los
sistemas sino que sería la cantidad de usuarios finales de todos los
sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto
no es así ya que por ej. hay "periodos del mes" en que se trabajará mas
(por ej. sistema empleados para las liquidaciones, etc.) o a veces se dá
por ráfagas en horarios pico del día. Sin embargo, nos da una idea del
volumen de información.
Como no he tenido experiencia previa con sql server no tengo mucha idea
de las prestaciones reales prácticas de este gestor de base de datos
(aunque les paresca de risa -a mi a veces me parece- trabajamos con
bases en cliper con tablas de 1 gb (unas cuantas... y vamos pasando a
históricos).
Espero no haberlos cansado y espero además una orientación con respecto
a la pregunta "¿se bancará en sql server 2000 sobre windows 2000 server
bajo un hp pentium III con 1gb de ram con disco 80gb (raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell










Respuesta Responder a este mensaje
#4 Javier Loria
08/12/2006 - 04:19 | Informe spam
Hola Carlos:
Debe ser el producto de malas experencias :(
Por ejemplo hace 2 años trabaje con una base de datos de recursos
humanos de 800 tablas y 700,000 lineas de codigo en SQL (Vistas, Funciones y
Procedimientos Almacenados), puedes decir que toda la aplicación estaba
hecha en SQL. El problema de esto es que SQL es un lenguaje limitado y para
solucionar problemas complejos se requiere mucha inmaginacion y este tipo de
codigo castiga mucho al servidor.
A mi el SQL me gusta simple :)
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> wrote in message
news:
Javier, me sorprende el comentario acerca de si tiene "mucha, mucha
lógica de negocios en procedimientos almacenados". ¿A qué te refieres
exactamente?.

Hugo, seguramente si eliminas esos cursores el rendimiento se verá muy
favorablemente afectado


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Hugo Gsell" escribió en el mensaje
news:
Gracias... abre un halo de esperanza a lo que yo pensaba aunque tus
apreciaciones (consideraciones) no son tan así:
a) Usas cursores: SI
b) Tienes tu base de datos desnormalizada: NO (minimamente en 1 par de
situaciones)
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: NO la lógica de negocio la manejo en una capa de mi
aplicación .net.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: PROBABLEMENTE.
e) Usas el servidor para algo mas que SQL Server: NO.

De todas formas me parece razonable y coherente lo que dices.
Nuevamente gracias.

Hugo A. Gsell

"Javier Loria" escribió en el mensaje
news:
Hola Hugo:
Sobre tu pregunta especificamente: ¿se bancará en sql server 2000
sobre windows 2000 server bajo un hp pentium III con 1gb de ram con
disco 80gb (raid -espejado)?:
La respuesta es depende:
a) Usas cursores: Problablemente.
b) Tienes tu base de datos desnormalizada: Probablemente
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: Probablemente.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: Probablemente.
e) Usas el servidor para algo mas que SQL Server: Probablemente.
Habra otras condiciones pero no se me ocurren ahora. Las
transacciones que manejas no deberian ser ningun problema, incluso ese
numero de transacciones al dia no seria problema.
Una nota adicional, si no puedes comprar otro server busca comprar
otros discos (2) para usar el transaction log separado de la BD, esto
suele incrementar sensiblemente el desempeño.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Hugo Gsell" wrote in message
news:
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada
uno se creó una base de datos en sqlserver 2000 sobre un windows 2000
server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios,
o la tabla provincias (ya que cada empleado perteneces a una provincia
y proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas
comunes ó crear un almacen (base de datos) común donde vayan este tipo
de tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los
controles) pierdo calidad en diseño bah digo,,, ya no podré ver
elegantemente mi "diagrama" con sus relaciones completas. Y si duplico
las tablas "no" y repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo en
una sola BASE DE DATOS, sin embargo la pregunta que surgió
'inmediatamente' es en cuanto al rendimiento es decir, se 'banca' el
sqlserver 2000, montado sobre un windows 2000 server, con un server HP
Pentium III 650 con 1 GB ram, hdd (RAID espejado) de 80 gb (que es lo
que nos dieron y otra cosa 'al menos por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que
hay varios de estos sistemas que recién se estan "intentado" migrar a
sqlserver, y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en
red) utilizarán los sistemas. Es decir, no todos utilizan todos los
sistemas sino que sería la cantidad de usuarios finales de todos los
sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto
no es así ya que por ej. hay "periodos del mes" en que se trabajará mas
(por ej. sistema empleados para las liquidaciones, etc.) o a veces se
dá por ráfagas en horarios pico del día. Sin embargo, nos da una idea
del volumen de información.
Como no he tenido experiencia previa con sql server no tengo mucha idea
de las prestaciones reales prácticas de este gestor de base de datos
(aunque les paresca de risa -a mi a veces me parece- trabajamos con
bases en cliper con tablas de 1 gb (unas cuantas... y vamos pasando a
históricos).
Espero no haberlos cansado y espero además una orientación con respecto
a la pregunta "¿se bancará en sql server 2000 sobre windows 2000 server
bajo un hp pentium III con 1gb de ram con disco 80gb (raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell














Respuesta Responder a este mensaje
#5 Maxi
08/12/2006 - 14:52 | Informe spam
Hola cocincido contigo hasta 2000, en 2005 ese codigo complicado se podria
poner en procedimientos CLR y hasta si los haces inteligentemente podes
ponerlos fuera del motor en un futuro con el menor esfuerzo.
Yo en un proyecto reciente puse la logica de negocios en CLR dentro del
SQL2005 y la verdad que estoy sorprendido de los resultados :)


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
http://maxiaccotto.blogspot.com/
"Javier Loria" wrote in message
news:
Hola Carlos:
Debe ser el producto de malas experencias :(
Por ejemplo hace 2 años trabaje con una base de datos de recursos
humanos de 800 tablas y 700,000 lineas de codigo en SQL (Vistas, Funciones
y Procedimientos Almacenados), puedes decir que toda la aplicación estaba
hecha en SQL. El problema de esto es que SQL es un lenguaje limitado y
para solucionar problemas complejos se requiere mucha inmaginacion y este
tipo de codigo castiga mucho al servidor.
A mi el SQL me gusta simple :)
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Carlos Sacristán" <csacristanARROBAmvpsPUNTOorg> wrote in message
news:
Javier, me sorprende el comentario acerca de si tiene "mucha, mucha
lógica de negocios en procedimientos almacenados". ¿A qué te refieres
exactamente?.

Hugo, seguramente si eliminas esos cursores el rendimiento se verá muy
favorablemente afectado


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Hugo Gsell" escribió en el mensaje
news:
Gracias... abre un halo de esperanza a lo que yo pensaba aunque tus
apreciaciones (consideraciones) no son tan así:
a) Usas cursores: SI
b) Tienes tu base de datos desnormalizada: NO (minimamente en 1 par
de situaciones)
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: NO la lógica de negocio la manejo en una capa de mi
aplicación .net.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: PROBABLEMENTE.
e) Usas el servidor para algo mas que SQL Server: NO.

De todas formas me parece razonable y coherente lo que dices.
Nuevamente gracias.

Hugo A. Gsell

"Javier Loria" escribió en el mensaje
news:
Hola Hugo:
Sobre tu pregunta especificamente: ¿se bancará en sql server 2000
sobre windows 2000 server bajo un hp pentium III con 1gb de ram con
disco 80gb (raid -espejado)?:
La respuesta es depende:
a) Usas cursores: Problablemente.
b) Tienes tu base de datos desnormalizada: Probablemente
c) Tienes mucha, mucha lógica de negocios en procedimientos
almacenados: Probablemente.
d) Tienes algunos usuarios corriendo muchisimos reportes o consultas
sin una estrategia sensible de indices: Probablemente.
e) Usas el servidor para algo mas que SQL Server: Probablemente.
Habra otras condiciones pero no se me ocurren ahora. Las
transacciones que manejas no deberian ser ningun problema, incluso ese
numero de transacciones al dia no seria problema.
Una nota adicional, si no puedes comprar otro server busca comprar
otros discos (2) para usar el transaction log separado de la BD, esto
suele incrementar sensiblemente el desempeño.
Saludos,

Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Hugo Gsell" wrote in message
news:
Como he mencionado en otro"asunto" tengo en la organización varios
subsistemas... contabilidad, empleados, expedientes, etc. Para cada
uno se creó una base de datos en sqlserver 2000 sobre un windows 2000
server.
Y hay una serie de tablas comunes por mencionar uno la tabla usuarios,
o la tabla provincias (ya que cada empleado perteneces a una provincia
y proveedores, ya que cada proveedor tambien perteneces a una pcia.
El problema se plantea en repetir en cada base de datos estas tablas
comunes ó crear un almacen (base de datos) común donde vayan este tipo
de tablas.
Ahora bien, si separamos las tablas (y utilizo tiggers para los
controles) pierdo calidad en diseño bah digo,,, ya no podré ver
elegantemente mi "diagrama" con sus relaciones completas. Y si duplico
las tablas "no" y repito NO es para nada óptimo.
Se me planteo 'mentalmente' una solución distinta, que es meter todo
en una sola BASE DE DATOS, sin embargo la pregunta que surgió
'inmediatamente' es en cuanto al rendimiento es decir, se 'banca' el
sqlserver 2000, montado sobre un windows 2000 server, con un server HP
Pentium III 650 con 1 GB ram, hdd (RAID espejado) de 80 gb (que es lo
que nos dieron y otra cosa 'al menos por ahora' no hay).
En cuanto a la carga de trabajo esta un poco dificil de estimar ya que
hay varios de estos sistemas que recién se estan "intentado" migrar a
sqlserver, y otros haciendose de la "nada".
El único dato REAL y objetivo es que unas 150 personas (que estan en
red) utilizarán los sistemas. Es decir, no todos utilizan todos los
sistemas sino que sería la cantidad de usuarios finales de todos los
sistemas.
Si tuviesemos que medir en transacciones de acuerdo a los trabajos de
analisis que llevé a cabo estimo unas

sistema expedientes 25000 transaccines mensuales
sistema empleados 5000 transacciones mensuales
sistema contabilidad 14000 transacciones mensuales
otros sistemas 15000 transacciones mensuales
supongamos en el mejor de los casos que esto es constante, aunque esto
no es así ya que por ej. hay "periodos del mes" en que se trabajará
mas (por ej. sistema empleados para las liquidaciones, etc.) o a veces
se dá por ráfagas en horarios pico del día. Sin embargo, nos da una
idea del volumen de información.
Como no he tenido experiencia previa con sql server no tengo mucha
idea de las prestaciones reales prácticas de este gestor de base de
datos (aunque les paresca de risa -a mi a veces me parece- trabajamos
con bases en cliper con tablas de 1 gb (unas cuantas... y vamos
pasando a históricos).
Espero no haberlos cansado y espero además una orientación con
respecto a la pregunta "¿se bancará en sql server 2000 sobre windows
2000 server bajo un hp pentium III con 1gb de ram con disco 80gb
(raid -espejado)?"

Desde ya muchas gracia por el tiempo dispensado.


Hugo A. Gsell

Hugo A. Gsell


















Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida