Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/10/2015, 14:06
ljbautista
 
Fecha de Ingreso: junio-2010
Ubicación: Puebla, Pue.
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Pregunta Actualizar muchos registros entres 2 tablas MysQL y PHP

Hola compañeros, bueno, hoy me tomo el tiempo para preguntar por un problema que tengo desde hace algunos años y apenas se volvio retomar en donde trabajamos; Quisiera pedir su ayuda para que me orienten un poco, tratare de ser breve y claro:

En un callcenter hay un sistema PHP que maneja un tabla cartera con mas de 20 mil registros, de estos algunos registros son repartidos a varios usarios (unos 50 empleados) y en el transcurso del dia van trabajando con los registros (Cambiando estatus, consultando, ingresando comentarios, etc...)

Cada determinado tiempo llega el Archivo Excel para actualizar la cartera de la BD, y desde el sistema ya existe un modulo que importa la cartera a una tabla temporal y de ahi se hace un proceso de actualizacion desde un script PHP que hace actualmente esto:
  1. Toma cada registro de la tabla temporal y checa registro por registro en la tabla cartera
  2. Si ya existe, se hace un update de algunos datos en la tabla cartera
  3. Si al final no existe, hace un insert
  4. Se elemina el resgitro en la temporal
  5. Cuando se termina de recorrer toda la tabla temporal, se hace un update en caratera para dar de baja (cambiar un valor estatus) los registros que ya no llegaron en el excel

Como pueden ver se ejecutan muchos querys desde el script PHP al servidor.

Cuando se hace esta actualizacion el sistema se atora para todos los demas usarios hasta unos 40 minutos.

Me he percatado abriendo el phpmyadmin y actualizando la pagina que cuando se atora todo, NO se esta haciendo nada en la BD, sino que una vez que se desatora es cuando se empiezan a hacer los updates, intserts y deletes.

No se cual sea la manera mas eficiente o correcta para hacer este proceso?

De antemano gracias y ojala puedan ayudarme ;)