Hola! Pues mal el caso, pero entiendo, si no quieren pagar mas, es su bronca, sin embargo, en mi opinion, por lo mismo que no quisieron pagar mas, creo que tendran que pagar las consecuencias de lo que se estan "ahorrando".
En mi opinión, creo que vas a necesitar muchos indices bien definidos para que funcionen correctamente los select, etc., entonces empezando por ahi, la inserscion masiva seria mejor, es decir, todo al mismo tiempo, ni modo, por que cada ves que haces un update, etc., tambien los indices se modifican, lo que al final de cuenta me parece que dividir en varios updates seria al final de cuentas mas pesado, tambien, para optimizar, create un SP, donde le pasas la cadena de SQL para la insercion, el simple hecho de que el insert sea dentro del SP, lo hara mucho mas rapido que una consulta desde fuera, no uses recordset para esto, usa un set rs = conn.execute, por el tema de los recursos, para el timeout, tu sabes que hacer.
La forma en que la armes, etc., creo que esta bien como lo piensas hacer, aunque claro, debes validar todo muy, muy bien en el ASP que recibe para evitar graves problemas.
Otra cosa de bases de datos, es que tendras que ser muy ciudadoso con como ordenar los campos, te recomiendo agruparlos por tipo, dejando los dinamicos al final, es decir;
intX
intY
intZ
char1
char3
char3
varchar1
varchar2
varchar3
Y a como estan las cosas, si tienes campos tipo text, etc, para guardar grandes cosas, puedes usar un textfile para eso, que no este en la db consumiendo espacio.
Tambieno para fotos por ejmplo, en lugar de URL, etc., usa los metodos por ID, es decir, como:
Puede tener 5 fotos, entonces en la DB, en lugar de 5 URL, pones, NumFotos, entonces por ASP dices:
/carpetaFotos/ID.NUMFOTO.jpg
Entonces, si quieres guardar 3 fotos, solo pones
ID = 1
NumFotos = 3
/carpetaFotos/1.1.jpg
/carpetaFotos/1.2.jpg
/carpetaFotos/1.3.jpg
Asi, le quitas peso a la base de datos.
Si tienes cosas de localidad, haz index, como clustered indes sobre pais-estado, que minimizaran el proceso de select, lo select, hazlos basados en los indices que creaste para asegurar que el select se apoya en el index que creaste, etc.
Ufff, me extendi, es que son muchos detallitos que pueden ir quitando, pero en tu caso con algo tan pesado, debes ir modificando tu Tabla de modo que todos estos detallitos de optimización los puedas aplicar para que funcione lo mejor posible, algo que de antemano no es ideal.
Puedes tambien poner la DB para apoyarte más
Suerte!! |