--- El vie 25-jul-08, Alvaro Herrera <[EMAIL PROTECTED]> escribió:

> De: Alvaro Herrera <[EMAIL PROTECTED]>
> Asunto: Re: [pgsql-es-ayuda] normalizacion
> A: "José Fermín Francisco Ferreras" <[EMAIL PROTECTED]>
> Cc: "foro postgresql" <pgsql-es-ayuda@postgresql.org>
> Fecha: viernes, 25 julio, 2008, 10:55 am
> José Fermín Francisco Ferreras escribió:
> > 
> > Hola, quisiera saber su opinión sobre el asunto q
> hacen muchos
> > programadores (los cuales tambien diseñan las base d
> datos) y es q en
> > la tabla factura guardan tanto el codigo de cliente,
> como el nombre y
> > apellidos del cliente. Cómo todos ustedes saben eso
> rompen con las
> > reglas d normalización.
> > 
> > Q opinan uds. sobre ese asunto, a q se deberá esto??
> 
> A que la mayoría de los programadores no tiene idea de
> diseñar
> correctamente una base de datos :-)
> 
> -- 
> Alvaro Herrera                 


Quiero expresar mi humilde opinion en este theread.

Digo humilde, por que me considero un Pato, no por aquello de un paso una 
caga..., si no por el hecho de que el Pato no es un crack en el Agua en eso le 
gana un pez, pero el pato nada y vuela, no como un aguila, pero tambien anda en 
la tierra, no como la libre, ahora todos son crack en su medio, pero lo sacan 
de el y no sobreviven.

Yo como el pato, oficio de DBA, Programador, trabajo en redes y salvo en 
hardware en lo demas creo tener solidos conocimiientos. NO soy un crack.

Alvaro me parece que lo que hace a un buen programador es justamente lo 
contrario, por lo menos yo que soy unipersonal en mi empresa, para mi lo mas 
importante es un buen MER, el otro es un escupe codigo, pero no un progamador.

Y lo que dice mi amigo solo lo explico por tres motivos.

1 El programador que hace eso POR IGNORANCIA, ese que deberia dedicarse a tomar 
un curso de carpintero, mecanica automotirz o cualquier otra cosa que lo aleje 
de su profesion.

Si me decis que en visual fox con DBF haces esto por que la herramienta es 
mala, no es escusa cambia de herramienta y almacena tus datos en una base de 
datos y si queres programa en Visual Fox, pero no uses DBF, por lo menos no 
para algo serio que para sacar buen rendimiento tenes que ser chancho.

2 Repite esos datos, en tablas que le sirven como vistas materializadas, para 
usarlas quiza despues de manera eficiente en consultas cartesianas o 
referencias cruzadas como gusten llamarlas. Bien pero eso lo hacen en tablas 
que no son operativas en el sistema funcional, si no que son reservadas para 
tareas de consulta estadistica o con otros propositos posteriores a las 
funciones basicas del sistema.

3 Un mal entendimiento de la desnormalizacion, puesto que para desnormalizar 
algo, primero hay que saber mucho de normalizacion, y desnormalizar es el 
ultimo recurso para dar una solucion ultima, requiere mas estudio que la 
anterior normalizacion. por que si no no estamos desnormalizando, si no que 
estamos haciendo cosas anormales.

Para que usamos PostgreSQL que es una excelente herramienta para no tener que 
hacer chanchadas, si lo que vamos hacer son chanchadas.

Una cosa que me encanta de PostgreSQL, es justamente su solvencia que me 
permite con buen rendimiento, mantener en excelente estado la integridad 
referencial, sin obviar nada. Incluso algo que me parece genial, no tiene 
vistas actualizables, cosa que en principio critique ya que en SQL Server si la 
tienen, pero me da la ventaja de crear una vista que se pueda borrar un 
registro o insertarlo, pero no permitir un update, cosa que resuelve uno de los 
puntos del theread donde alguien expresa que no quiere modificar los datos de 
una factura emitida, bueno que use un tipo de vista asi en sus sistemas y nadie 
va a poder modificar ese dato.

Otra cuestion que toca el theread es que en una universidad estan educando a 
sus alumnos en el sentido de que no importa el modelo de datos si no el de 
negocios.

Esto me parece que esta planeteado como una contradiccion absurda, puesto que 
el modelo de datos debe representar el modelo de negocio y del modelo de datos 
el negocio debe aprender.

Creo que realizando un MER, se pueden detectar procedimientos ineficientes en 
los negocios.

Ademas los procedimientos son mas peregnes que los datos, si uno se basa para 
programar en la necesidad que de los procedimientos de un determinado comercio, 
seguro que va a repetir con su sistemas los mismos errores con mayor velocidad 
y ademas va a tener que reprogramar cuando un procedimiento del comercio 
cambia, en cambio los datos que se manejan en una empresa son mas duraderos que 
sus procedimientos, por eso es mejor basarse en el MER y despues si se quiere 
enfrentarlo al diagrama de fuljo, antes de iniciar el desarrollo.

No hay modelo de datos que bien elaborado tenga que dejar la normalizacion para 
cumplir con algo, lo que lleva a la desnormalizacion son otras consideraciones, 
consideraciones que no deberian partir de los escasos recursos que tengo, o del 
lenguaje que decidi utilizar.

Espero que me perdonen la chachara, pero el hilo me intereso bastante y me 
parece que para usar PostgreSQL con malas practicas, mejor usen mysql, access o 
dbf que por lo menos tendran una justificacion, pero no usen cosas serias como 
PostgreSQL, Oracle o el mismo SqlServer.

Atte.
Gabriel Colina











      
____________________________________________________________________________________
Yahoo! MTV Blog & Rock &gt;¡Cuéntanos tu historia, inspira una canción y gánate 
un viaje a los Premios MTV! Participa aquí http://mtvla.yahoo.com/
--
TIP 4: No hagas 'kill -9' a postmaster

Responder a