טיפ: שליפה של השליפות הארוכות בשבוע האחרון (מתוך ה-AWR)

טיפ נחמד ושימושי – איך לשלוף מתוך הטבלאות של ה-AWR את השליפות הארוכות ביותר בשבוע האחרון.
השליפה שולפת את עשר השליפות בעלות הזמן המצטבר הגבוה ביותר. ניתן (וכדאי) לסנן את השליפה הזו עם Parsing Schema ספציפי כדי לקבל מידע שניתן לעבד אותו ולעבוד עליו כראוי:

SELECT row_number ()
          OVER (ORDER BY seconds_since_date DESC) rank,
       sub.sql_id,
       parsing_schema_name,
       sub.seconds_since_date,
       sub.execs_since_date,
       ROUND (sub.seconds_since_date / sub.execs_since_date, 3) avg_query_time,
       max_end_interval_time,
       module
FROM (SELECT sql_id,
             g.parsing_schema_name,
             ROUND (SUM (elapsed_time_delta) / 1000000) AS seconds_since_date,
             SUM (executions_delta) AS execs_since_date,
             SUM (buffer_gets_delta) AS gets_since_date,
             MAX (end_interval_time) AS max_end_interval_time,
             MAX (module) as module
      FROM    dba_hist_snapshot
           NATURAL JOIN
              dba_hist_sqlstat g
      WHERE begin_interval_time >= SYSDATE - 7
      GROUP BY sql_id, g.parsing_schema_name
      having SUM (executions_delta)  > 0
      ORDER BY seconds_since_date DESC) sub
WHERE ROWNUM <= 10

כדאי לשים לב שהשליפה לא מחזירה את השליפה עצמה (SQL Text) אלא את ה-SQL ID וזה אומר שניתן להשתמש בה כדי להריץ דוחות ASH כדי לקבל את הקוד ואת ה-Execution plans שהשליפה השתמשה בה.

לשימושכם.. 🙂

0 תגובות

השאירו תגובה

Want to join the discussion?
Feel free to contribute!

השאר תגובה

אתר זה עושה שימוש באקיזמט למניעת הודעות זבל. לחצו כאן כדי ללמוד איך נתוני התגובה שלכם מעובדים.