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"