Javier:
Este problema se debía a que si la tabla (o tablas), fueron generadas con una secuencia de ordenamiento *HEX (por ejemplo), tu debes leerla con un JOB que tenga ese valor en el SRTSEQ y la lectura será rápida; en caso contrario, si el JOB tiene SRTSEQ= *LANGIDSHR el sistema te recrea on-line el indice para acceder la tabla. Ojala que puedas solucionar tu problema.... Ignacio T. ________________________________ De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de Javier Mora Enviado el: Jueves 27 de Marzo de 2008 5:28 Para: forum.help400 Asunto: RE: SQL vs SQL -- curiosidad En cuanto tenga un hueco, revisaré todo lo que apuntas en tu correo. Ya comentaré los resultados. ________________________________ De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de Tellez Alvarado, Ignacio Andres Enviado el: miércoles, 26 de marzo de 2008 20:55 Para: forum.help400 Asunto: RE: SQL vs SQL -- curiosidad Yo tuve un problema similar, y encontramos una solución al problema. Una consulta SQL sobre varios millones de registros se comportaba muy lentamente en un ambiente interactivo (por ejemplo SRTSQL), y la misma consulta en otro ambiente (ISeries Navegator) era muy rápida, y en un programa Batch (SQLRPG) la misma consulta era muy lenta. La rareza se da porque en los diferentes ambientes los parámetros de ordenamiento de los JOBS son distintos (parámetro SRTSEQ), o al compilar Un SQLRPG se indicó una secuencia que no era la correcta. En una sesión interactiva (por ejemplo) el SRTSEQ esta en *LANGIDSHR; al ejecutar el STRSQL y ejecutar F13, los parámetros de ordenación Podrían no ser iguales (por ejemplo *HEX). Ahora si me conecto desde el iSeries Navegator el SRTSEQ es distinto, porque el trabajo servidor del AS400 tiene otra secuencia de ordenamiento. Estas diferencias de SRTSEQ provocan este comportamiento anómalo en cada ambiente y hace que las consultas SQL sean eternas. Solucionamos el problema, regularizando todos los entornos de trabajo a un valor común y que el idioma de todos los ambientes fuera el mismo. Otra alternativa es usar *HEX para todos. Ojala que hayan podido entenderme. Saludos, Ignacio T. ________________________________ De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de [EMAIL PROTECTED] Enviado el: Miércoles 26 de Marzo de 2008 10:18 Para: forum.help400 Asunto: Re: SQL vs SQL -- curiosidad por curiosidad , ya que estas metido en el tema: ¿ Podrías comprobar cuanto tarda en leer los millones de registros mediante un programa RPG IV ? . Con SETLL I READE por ejemplo . Gracias y saludos. En/na Javier Mora ha escrit: Hola Alex: Bueno, a no ser que lo haya creado el sistema, el archivo físico con los 100 millones de registros no tiene ningún índice, sólo la vía de acceso creada con el físico (DDS). Lo que apuntas podría ser cierto, incluso si el sistema creara un índice temporal, pero comprobé después de ejecutar el SELECT con RUNSQLSTM, QM o RPG, el tiempo de ejecución con STRSQL siendo los resultados los mismos. Podrían ser PTFs. Estoy en V5R4 con el nivel 7282 del PTF acumulativo. El grupo para DB2 UDB está en el 13. Consultaré el link que me indicas. Sobre el asesor también visitaré la reseña que indicas. Un saludo, Javier Mora ________________________________ De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de alex martinez Enviado el: martes, 25 de marzo de 2008 11:50 Para: forum.help400 Asunto: Re: SQL vs SQL -- curiosidad Si estás en V5R4 puede que el sistema te haya recomendado un indice. Es mucho especular, pero puede que durante tu primer intento el indice no estuviera disponible y en la siguientes consultas ya estaba preparado.... Aunque están apareciendo contínuamente PTFs sobre OSP-DB PERFORMANCE como por ejemplo http://www-912.ibm.com/a_dir/as4ptf.nsf/ALLPTFS/MF43280 Sobre el asesor de indices publiqué una entrada sobre esta novedad en mi blog http://www.ajut400.com/2007/06/asesor-de-ndices.html El día 25/03/08, Javier Mora <[EMAIL PROTECTED]> escribió: Hola a todos: Esta nota es sólo para exponer una curiosidad que me ha surgido al utilizar SQL. Os explico. He construido una sentencia SELECT no muy complicada que toma datos de cuatro ficheros, dos de ellos con 15 millones y casi 100 millones de registros. Mi método de trabajo consiste en probar primero los resultados desde una sesión interactiva de SQL (STRSQL). Después de intentar optimizar en varias ocasiones la sentencia, desde STRSQL no he conseguido que termine la ejecución (en todas las ocasiones esperé más de una hora, hasta que cancelé el proceso). Esta situación me desesperó un poco. En equipos anteriores la ejecución de trabajos por lotes ha ido siempre más rápida (hablamos de programas no interactivos). Cogí la misma sentencia SELECT y la ejecuté con el mandato RUNSQLSTM en batch. ¡Oh, que sorpresa! La ejecución terminó en no más de un minuto. Como la sentencia SQL la tuve que cambiar para dejar los resultados en un fichero pensé que podría tener algo que ver. Luego intenté ejecutar RUNSQLSTM en interactivo y, ¡qué casualidad!, el resultado fue el mismo (o casi): entre un minuto y dos en ejecutarse. Hice una prueba más, para disipar alguna duda. Utilicé la misma sentencia SELECT en QM y los resultados fueron similares. Finalmente, incluí el SQL en el programa RPG desde donde debía trabajar con las filas devueltas y su ejecución no fue más allá de los dos minutos. ¿Es esto sólo una curiosidad? ¿Alguien tiene o se le ocurre una explicación? Desde mi punto de vista, una sentencia SQL debería ejecutarse a través de los mismos recursos desde STRSQL o cualquier otra utilidad. ¿Estoy equivocado? Un saludo Javier Mora __________________________________________________ Forum.HELP400 es un servicio m&#225;s de NEWS/400. &#169; Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400 -- Mi blog sobre as400 http://www.ajut400.com ________________________________ __________________________________________________ Forum.HELP400 es un servicio m&#225;s de NEWS/400. &#169; Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400 ________________________________ ----------------------------------------------------------------- Notice of Confidentiality: The information transmitted is intended only for the sender and person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, e-transmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender immediately by return electronic transmission and then immediately delete this transmission, including all attachments, without copying, distributing or disclosing same. ------------------------------------------------------------------ Aviso de Confidencialidad: Este correo electrónico y/o el material adjunto es para uso exclusivo del emisor y la persona o entidad a la que expresamente se le ha enviado, y puede contener información confidencial o material privilegiado. Si usted no es el destinatario legítimo del mismo, por favor repórtelo inmediatamente al remitente del correo y bórrelo. Cualquier revisión, retransmisión, difusión o cualquier otro uso de este correo, por personas o entidades distintas a las del destinatario legítimo, queda expresamente prohibido. Este correo electrónico no pretende ni debe ser considerado como constitutivo de ninguna relación legal, contractual o de otra índole similar. ------------------------------------------------------------------ ----------------------------------------------------------------- Notice of Confidentiality: The information transmitted is intended only for the sender and person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, e-transmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender immediately by return electronic transmission and then immediately delete this transmission, including all attachments, without copying, distributing or disclosing same. ------------------------------------------------------------------ Aviso de Confidencialidad: Este correo electrónico y/o el material adjunto es para uso exclusivo del emisor y la persona o entidad a la que expresamente se le ha enviado, y puede contener información confidencial o material privilegiado. Si usted no es el destinatario legítimo del mismo, por favor repórtelo inmediatamente al remitente del correo y bórrelo. Cualquier revisión, retransmisión, difusión o cualquier otro uso de este correo, por personas o entidades distintas a las del destinatario legítimo, queda expresamente prohibido. Este correo electrónico no pretende ni debe ser considerado como constitutivo de ninguna relación legal, contractual o de otra índole similar. ------------------------------------------------------------------
__________________________________________________ Forum.HELP400 es un servicio m&#225;s de NEWS/400. &#169; Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400

