Puede ser importante examinar las sentencias SQL que consumen mucho tiempo, CPU o memoria. Los siguientes pasos muestran cómo habilitar el costoso seguimiento de extractos.
El siguiente SQL permitirá el seguimiento de declaraciones esclavas, establecerá los valores de umbral, ejecutará algunas declaraciones que superen los umbrales y luego deshabilitará el seguimiento de declaraciones esclavas.
ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE') SET ('expensive_statement', 'enable') = 'on' WITH RECONFIGURE; ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE') SET ('expensive_statement', 'threshold_memory') = '41943040' WITH RECONFIGURE; -- 40 MB ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE') SET ('expensive_statement', 'threshold_duration') = '3000000' WITH RECONFIGURE; -- 3 sec CALL HOTEL.RESERVATION_GENERATOR(1000); --consumes more than 40 MB of memory DO BEGIN -- Wait for a few seconds USING SQLSCRIPT_SYNC AS SYNCLIB; CALL SYNCLIB:SLEEP_SECONDS( 3 ); --runs for longer than 3 seconds -- Now execute a query SELECT * FROM M_TABLES; END; ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE') SET ('expensive_statement', 'enable') = 'off' WITH RECONFIGURE;
Se puede encontrar una lista de declaraciones que superan los valores de umbral de la declaración costosa en la vista
M_EXPENSIVE_STATEMENTS
.select TOP 2 DURATION_MICROSEC/1000000, CPU_TIME/1000000, MEMORY_SIZE/1048576, START_TIME, RECORDS, STATEMENT_STRING from M_EXPENSIVE_STATEMENTS order by start_time desc;
Con SAP HANA Cloud, un explorador de bases de datos, la pestaña de mensajería también contiene información detallada sobre la duración, la CPU y la memoria consumida por una declaración.
¡Felicidades! Ahora ha explorado las herramientas disponibles para ayudar a diagnosticar y depurar SQL o SQLScript.