FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Duda de Perfomance con Zeos...
Vi varios hilos donde se aconseja utilizar Zeos con MySQL y de hecho lo estoy usando, funciona perfectamente sin 'grandes' cambios de una aplicación que usaba ADO. El tema en cuestión es que cuando quiero traer un maestro de artículos con 7300 registros aproximadamente se viene todo abajo, trabajando local y sin procesos previos, o sea:
ID_PRODUCTO es la clave primaria. Es impresionante lo que tarda, ni hablar de que consume todos los recursos de la PC (cuando no se cuelga). Es esto normal ?. No son muchos registros. El problema es de Zeos ó MySQL ó ??? Las tablas son de tipo MyISAM y no InnoDB, con lo cual las consultas deberían ser mas 'óptimas'. A alguien le pasó algo así ? Bah nose que mas preguntar. Acepto todo tipo de sugerencias. Saludos y muchas gracias de antemano! |
#2
|
||||
|
||||
Se me ocurre que el problema no sea cuando traes esta tabla maestro, sino una o varias tablas detalle que dependan de esta.
Mira que tienes en los métodos before/afteropen, before/afterscroll y las tablas que tengas unidas a esta por su DataSource. (Puedes hacer la prueba de desabilitar estas tablas antes de abrir el maestro y luego volver a abrirlas.) |
#3
|
||||
|
||||
Y pregunto yo, sólo por curiosidad, ¿para qué sirve tener en pantalla una lista de más de 7000 clientes?
Yo los atiendo siempre de uno en uno.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
||||
|
||||
Cita:
__________________
|
#5
|
||||
|
||||
Cita:
Saludos.
__________________
Mi BLOG - ¡Joder, leanse la guia de estilo! Las Palabras son enanas, los ejemplos gigantes. |
#6
|
|||
|
|||
Bien, gracias!
Y nose que decirles, seguiré probando pero es muy raro. Con SQL Server jamás noté falta de rendimiento con tan pocos registros.
La PC de un cliente era un Celeron 2.X con 512mb de ram, y tardaaaaba, entonces me traje la base para probarla en casa, con un Athlon 3600 y 1 GB de Ram, tarda caaaasi 5 minutos menos, juas! es altamente repulsivo el sistema así. Si me tarda 5 minutos en traer 7000 registros me retiro de la programación y me dedico al arte culinario! Casimiro, no son clientes sino productos, pero en caso que lo fueran y quisiera traer los 7000/20000 registros no es nada, el gestor de BD se debería 'bancar' perfectamente. Ahora, al menos me queda claro que no es el motor ni zeos, entonces veré como optimizar mi sistema/consultas. Muchas gracias muchachos ya encontraré el problema. |
#7
|
|||
|
|||
Problema solucionado
En el evento FormShow del formulario en cuestión
tenía estas tres lineas: Código:
Data.zqryPROD.SortedFields := 'COD_SCANNER'; Data.zqryPROD.SortType := stDescending; grdDataTitleClick( grdData.Columns[1] ); Algo totalmente sin importancia, pero ordenar una tabla mediante Sort es pesado con zeos. No así con ADO, pero bueh, no voy a comparar un metodo de acceso con otro. Es todo gente, muchas gracias por la atención brindada. |
#8
|
||||
|
||||
Cita:
Es curioso, porque el Sort en Zeos yo lo adoro, y es uno de los puntos fuertes que le encontré, ya el hecho de tener propiedades SortedField y SortType dotan a este componente de una utilidad muy importante. Yo acabo de probar realizar una consulta a una tabla que tiene 24 campos, 1 clave primaria y 2 foráneas. Esta tabla tiene en su RecordCount la cantidad de 244.178 registros, y la devolución del cursor de datos es "al ojo" casi imperceptible, por no decirte instantánea. No se que versión de Zeos estes usando, pero asegurate de bajar la ultima versión que este disponible, y fijate de usar el driver adecuado en la propiedad Protocol de la conexión. Saludos
__________________
|
#9
|
|||
|
|||
Hum a ver...
Cita:
ver.: 6.6.2-RC protocolo: mysql-5 (Acá puede haber diferencias, ya que hay varios drivers para MySQL) En caso de que haya algo mejor me avisas por favor, o que yo lo emplee mal nose. Me fascinó Zeos porque pasar un sistema completo hecho con ADO fue muy rápido y con un mínimo esfuerzo. Mi idea era lograr que el sistema funcione en web, funciona pero no como debería ya que al ser muchas tablas que actualizo se torna un poco pesado y se va por timeout. Bueno compa, decime por favor qué/cómo lo usas y lo pruebo, estoy seguro que debe mejorar el rendimiento. Saludos y muchas gracias! |
#10
|
||||
|
||||
Yo ya me andaba espantando con 250 mil registros pero MySQL los maneja como plumas. Ahora que también tiene que ver que el sort lo hago del lado del servidor mediante ORDER BY por lo cual sin duda es mucho más rápido.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#11
|
|||
|
|||
Y con 250K necesito un AS400
Cita:
Estoy probando con los distintos protocolos, pero no logro acelerar esto. Es un bicho raro! Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Duda con componentes Zeos | waly2k1 | Conexión con bases de datos | 8 | 14-03-2008 02:33:28 |
Zeos | tertuliano | Conexión con bases de datos | 3 | 11-09-2006 19:04:45 |
Zeos | pipecato | Varios | 0 | 02-09-2005 23:24:26 |
Zeos y Try Except | JROMAN | Conexión con bases de datos | 0 | 15-10-2004 11:01:49 |
zeos | agora18 | MySQL | 0 | 10-02-2004 23:57:47 |
|