Mi aplicación requiere mucha base de datos. Actualmente, ejecuto MySQL 5.5.19 y el uso de MyISAM, pero estoy en el proceso de migrar a InnoDB. El único problema que queda es el rendimiento de la suma de comprobación.MySQL - La forma más rápida de verificar si los datos en la tabla InnoDB han cambiado
Mi solicitud hace unos 500-1000 declaraciones "CHECKSUM TABLE" por segundo en las horas punta, ya que el cliente GUI está sondeando la base de datos constantemente por los cambios (se trata de un sistema de monitoreo, por lo que debe ser muy sensible y rápido).
Con MyISAM, hay sumas de verificación en vivo que se calculan previamente en la modificación de la tabla y son MUY rápidas. Sin embargo, no existe tal cosa en InnoDB. Entonces, CHECKSUM TABLE es muy lento ...
Espero poder verificar la última actualización de la tabla, Desafortunadamente, esto tampoco está disponible en InnoDB. Estoy atascado ahora, porque las pruebas han demostrado que el rendimiento de la aplicación cae drásticamente ...
Simplemente hay demasiadas líneas de código que actualizan las tablas, por lo que la implementación de la lógica en la aplicación para registrar cambios en la tabla está fuera de la pregunta ...
El ecosistema de la base de datos consta de un maestro na 3 esclavos, por lo que las verificaciones de archivos locales no son una opción. Pensé en un método para imitar una caché de suma de comprobación: una tabla de búsqueda con dos columnas, table_name, checksum y actualizar esa tabla con disparadores cuando ocurren cambios en una tabla, pero tengo alrededor de 100 tablas para monitorear y esto significa 3 desencadenadores tabla = 300 desencadenantes. Es difícil de mantener, y no estoy seguro de que esto no sea un cerdo de rendimiento nuevamente.
¿Existe algún método FAST para detectar cambios en las tablas InnoDB?
Gracias!
duplicado: http://dba.stackexchange.com/questions/9569/fastest-way-to-check-if-innodb-table-has-changed –
Es posible que desee verificar [esta pregunta/respuesta] (http://stackoverflow.com/questions/2785429/how-can-i-determine-when-an-innodb-table-was- last-changed) (si aún no lo hizo). –
Ah, bien, este es mi hilo también, pero no pensé que este es el mismo sitio ... perdón, soy nuevo aquí. – Jacket