pregunta general sobre base de datos

11/05/2004 - 16:28 por Morena | Informe spam
Hola,

La pregunta que tengo es un tanto general para bases de datos pero quisiera
que me ayudaran con ella en el contexto de SQL Server 2000.

El caso es el siguiente:
Tengo una tabla que guarda las lecturas a detalle de un lector de barras.
Este lee el producto que se surte de una bodega. Es una tabla que almacena
una cantidad muy grande de registros.
Pregunto si es una buena práctica acumular toda esa información en otra
tabla pero acumulada por fecha y código del producto, esto para efectos de
hacer las consultas más rapidas.

Por ejemplo:

Tabla1 (la que guarda información leída con el lector)
CodProducto FechaLectura Cantidad
AAAA1 14/04/04 2
AAAA1 14/04/04 3
AAAA1 16/04/04 1
BBBB1 17/04/04 11
AAAA1 17/04/04 4
BBBB1 17/04/04 3

Tabla2 (acumula la información de Tabla1 por producto y fecha)
-
CodProducto Fecha Cantidad
AAAA1 14/04/04 6
BBBB1 17/04/04 14
AAAA1 17/04/04 4

Tomar en cuenta que la Tabla1 puede llegar a crecer infinitamente, por lo
que al acumular en la tabla2 se borrarían de la tabla1 los datos
acumulados... la pregunta es a todo esto si es una buena práctica hacer esta
acumulación para efecto de hacer consultas de cantidades surtidas desde la
tabla2 y evitarse estar acumulando desde la tabla1 a la hora de hacer las
consultas???? Las consultas se haría por rango de fechas.

Gracias por su ayuda!!!
 

Leer las respuestas

#1 Maxi
11/05/2004 - 18:09 | Informe spam
Hola, yo no haria 2 tablas!! el matenimiento de ello es mucho , es verdad
que desnormalizar en algunos casos es muy bueno, pero no creo que sea el
tuyo.

Yo lo que haria es tener unos buenos indices y una vista, quizas hasta la
puedas indexar y con eso aumentar tu performance

Suerte


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



"Morena" escribió en el mensaje
news:
Hola,

La pregunta que tengo es un tanto general para bases de datos pero


quisiera
que me ayudaran con ella en el contexto de SQL Server 2000.

El caso es el siguiente:
Tengo una tabla que guarda las lecturas a detalle de un lector de barras.
Este lee el producto que se surte de una bodega. Es una tabla que almacena
una cantidad muy grande de registros.
Pregunto si es una buena práctica acumular toda esa información en otra
tabla pero acumulada por fecha y código del producto, esto para efectos de
hacer las consultas más rapidas.

Por ejemplo:

Tabla1 (la que guarda información leída con el lector)
CodProducto FechaLectura Cantidad
AAAA1 14/04/04 2
AAAA1 14/04/04 3
AAAA1 16/04/04 1
BBBB1 17/04/04 11
AAAA1 17/04/04 4
BBBB1 17/04/04 3

Tabla2 (acumula la información de Tabla1 por producto y fecha)
CodProducto Fecha Cantidad
AAAA1 14/04/04 6
BBBB1 17/04/04 14
AAAA1 17/04/04 4

Tomar en cuenta que la Tabla1 puede llegar a crecer infinitamente, por lo
que al acumular en la tabla2 se borrarían de la tabla1 los datos
acumulados... la pregunta es a todo esto si es una buena práctica hacer


esta
acumulación para efecto de hacer consultas de cantidades surtidas desde la
tabla2 y evitarse estar acumulando desde la tabla1 a la hora de hacer las
consultas???? Las consultas se haría por rango de fechas.

Gracias por su ayuda!!!







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.676 / Virus Database: 438 - Release Date: 04/05/2004

Preguntas similares