Skip to Content

Base de datos SAP B1 One Lenta

Buenas tardes, espero me puedan ayudar en el siguiente problema, ya que agote mis conocimientos sobre el tema..

Nuestro SAP esta lento en algunos reportes y procesos de lectura en la base de datos (la escritura es muy ágil), como información principal, para poner en contexto la problemática, describo a grandes rasgos las características de nuestro servidor y software: tenemos la version Bussines One 8.88, en un servidor Intel Xeon E5 a 2.4Ghz (2 procesadores), 64 GB de memoria RAM (SQL toma 48GB de los 64GB), la base de datos esta montada en disco de estado solido (actualmente pesa 160GB, el año pasado se hizo una reimplementacion ya que pesaba 600 GB), la velocidad de la red esta a 4GB (en un arreglo de tarjetas de red).

El problema: Como comentaba, el SAP se pone lento cuando corremos reportes nativos de SAP (Antigüedad de saldos de clientes tarda hasta 10 minutos cuando anteriormente no tardaba mas de 10 segundos) mientras se corre este reporte, los registros quedan bloqueados y otras transacciones se ponen en cola de espera y/o tardan en responder las consultas y hasta que no termine de ejecutarse el reporte de antigüedad de saldos, los registros vuelven a liberarse y continuar las siguientes transacciones, en general cualquier consulta que no este optimizada con la sentencia WITH (NOLOCK) se queda en cola de espera hasta el punto de que SAP se crashea por TIMEOUT y saca a todo mundo de su sesión. Para escribir información en la BD no hay problema siempre y cuando las tablas no estén siendo ocupadas por un proceso de lectura.

Lo extraño es que cuando la base de datos pesaba 600 GB no presentaba esta lentitud en lectura de información, se planteo la reimplementacion del sistema (misma versión de sap) por el tema del tamaño de la base de datos, ya que los respaldos se estaban convirtiendo en un problema). Después de la implementacion se comenzó a presentar esta problematica apartir de que la base de datos rebaso los 150 GB, yo se lo atribuyo a una mala implementacion del sistema por parte del especialista en SAP, ya que si ejecuto el mismo reporte desde la base de datos que quedo como historica (la de 600 GB) el reporte se sigue ejecutando en menos de 10 segundos. pero me gustaria saber su opinion.

Ahora bien, estas son las medidas que he realizado para buscar una solucion (todas las pruebas las he realizado en una base de datos de prueba que es una restauracion de la base de datos productiva):

Pruebas de lectura a la base de datos desde el servidor de SAP: Para descartar que sea lentitud de mi red, ejecute el reporte desde el servidor de SAP, la respuesta es la misma, esta lento aun si ejecuto desde un cliente o el servidor, por lo que descarto lentitud en mi red,

Pruebas de lectura de la base de datos desde otro disco duro: Pensando que el problema podría ser el disco duro, cambie la base de datos a otro disco de estado solido (el mismo disco donde tengo la base de datos de 600 GB) la respuesta es la misma, base de datos de 160 GB: lenta, base de datos historica de 600 GB: Rapida, por lo que descarto que sea el disco duro.

Mantenimiento a la BD: Pensando que sea tema de mantenimiento a la base de datos, realice los procesos de reconstruir indices, actualizar estadísticas, limpiar log de transacciones y checkDB (todo esto a nivel de bd), a nivel SAP use las herramientas que otorga a aplicación para disminuir el log de transacciones, restablecer reportes, consultas, SN, articulos, etc. desde el menu ayuda > supportDesk > Restablecer > los procesos terminan sin reportar error, pero mi consulta al reporte de antiguedad de saldo sigue sobrepasando los 10 minutos si no es que se crashea el SAP, intento hacer un trace con el SQL Profile a este proceso, y se muere la consulta antes de obtener resultados.

Consultas directo en SQL: las consultas que ejecuto en T-SQL van bien siempre y cuando no consulte una tabla que en ese momento este siendo bloqueada por SAP, si uso la sentencia WITH (NOLOCK) en el SELECT no tengo problema con consultar las tabla, por lo que descarto el motor de base de datos

cabe mencionar que estas pruebas las he hecho sobre la base de datos de pruebas (copia de la productiva de 160gb) sin usuarios conectados ni addons, comparando resultados con la base de datos historica (la que pesa mas de 600 gb) igual sin usuarios conectados, obteniendo resultados precarios para la de pruebas-copiaproductiva

he agotado mis conocimientos sobre el tema y tengo un monton de usuarios molestos, sigo pensando que el consultor de SAP esta omitiendo algo directamente en la confguracion de SAP ya que consultas directas en la base de datos con T-SQL están rapidas y no presentan problemas (reportes que se ejecutan por fuera de SAP en crystalReports andan sin problema siempre y cuando no haya registros ocupados por el mismo SAP)

Si alguien tiene una sugerencia extra a lo que ya realice, es bien venido.

Saludos y Gracias

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • Posted on Jun 26, 2019 at 11:08 AM

    Hola...

    ¿Has probado a ejecutar el proceso sin ningún addon conectado?

    De la misma forma, prueba a inhabilitar el transaction notification, dejalo como cuando esta la bbdd limpia y ejecuta el report.

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Jun 27, 2019 at 03:00 PM

    Hola

    ¿Cuánto espacio libre dispones en el disco donde está la base de datos?

    ¿Truncaste el fichero de log?

    Si lanzas cualquier otro informe, por ejemplo, el diario para un mes ¿consideras que tarda más de lo esperado?

    Un saludo

    Agustín

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Jun 29, 2019 at 04:51 PM

    Ya lo resolvi, la persona que implemento SAP, tiene conocimiento nulo en la creación de indices en las tablas de una base de datos, agregue los indices que me hacían falta y las consultas ahora son mas ágiles.

    Saludos.

    Add a comment
    10|10000 characters needed characters exceeded