Gabriel Ferro escribió:
Maestros, me conecto para pedirles un consejo. Tengo que pasar a postgres mas 
de 20 millones de personas desde varios archivos planos, y me salto la duda si 
es conveniente tener como hasta ahora una tabla de personas con clave 
tipo+numdocumento, una tabla localides y una tabla que relaciona ambas (por si 
la persona tiene varios domicilios.. la cosa es que no estoy seguro si estar 
trabajando con tablas tan grandes sea bueno, ¿tendre que separar las personas 
por abecedario o por provincias?, ¿lo dejo asi?...
les comento que las busquedas luego seran com muchos LIKES, es decir que no 
seran simplemente por  numdocumento
Saludillos...


      Yahoo! Cocina
Recetas prácticas y comida saludable
http://ar.mujer.yahoo.com/cocina/
--
TIP 5: ¿Has leído nuestro extenso FAQ?
         http://www.postgresql.org/docs/faqs.FAQ.html


A pesar de no ser un maestro, en principio te digo que si te conviene tener una tabla de personas y una de localidades. Lo de la relación de 1 persona - N localidades depende del modelo de datos que necesites. 20 millones de registros no son tantos datos, si tenes el equipo adecuado y no hace falta mucho, creo. Que otros índices vas a crear ?. Si tenes que mejorar el acceso, acordate que podes repartir las tablas y/o indices en distintos "tablespaces" o sea que podes tener una tabla en un disco y los indices en otro disco y asi, según necesites. Eso mejora los tiempos de accesos. Dependiendo de la aplicación y el modo en que debas acceder a los datos, podrías probar una clave primaria serial, sin ningún sentido, importar los datos y luego crear un indice unique (tdoc+ndoc). Esto me ha ayudado en casos de nros de documentos repetidos.

Creo que lo mejor es que generes la base de datos de la forma clásica, hagas pruebas y ahi veas si necesitas optimizar algo o no y entonces haces una consulta más especifica.

Saludos,
Diego.


--
TIP 7: no olvides aumentar la configuración del "free space map"

Responder a