{"id":109,"date":"2013-03-05T23:51:02","date_gmt":"2013-03-05T22:51:02","guid":{"rendered":"http:\/\/konsilium.de\/blog\/?p=109"},"modified":"2022-07-07T21:43:55","modified_gmt":"2022-07-07T19:43:55","slug":"sql-tipp-002-monitoring-sql-statements","status":"publish","type":"post","link":"https:\/\/konsilium.de\/blog\/2013\/03\/05\/sql-tipp-002-monitoring-sql-statements\/","title":{"rendered":"SQL Tipp #002 \u2013 Monitoring SQL Statements"},"content":{"rendered":"\n<p>In BI Projekten ist es sehr wichtig, die von den Endanwender abgesetzten bzw. von den BI-Tools generierten SQL Statements analysieren zu k\u00f6nnen. Je nach BI-Tool l\u00e4sst sich das generierte SQL durch allgemeine Einstellungen beeinflussen oder auch durch ein Re-Design des Berichtes optimieren bzw. korrigieren. Die SQL&#8217;s k\u00f6nnen dem Projektteam au\u00dferdem Anhaltspunkte \u00fcber typische Muster von Abfragen liefern. In jedem Fall lassen sich \u00fcber das Monitoring der SQL-Statements Optimierungsma\u00dfnahmen ableiten &#8211; Stichwort Indizierung und \/ oder die Bereitstellung von Aggregaten. Auf dem Markt gibt es einige (meiste kleine) Anbieter als auch IBM selbst, die entsprechende Tools anbieten. Man kann aber auch die Snapshotfunktionen, die DB2 von Haus aus mitliefert, verwenden.<\/p>\n\n\n\n<p>Das nachfolgende Skript liefert neben dem SQL Statement alle wichtigen Angaben, wie Startzeitpunkt, Anzahl gelesene Zeilen und ausf\u00fchrender User (execution_id -&amp;gt; entspricht bei Windows Systemen dem Windows Anmeldenamen). Voraussetzung zur Nutzung der Snapshotfunktionen ist die SYSMON authority.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT\n i.SNAPSHOT_TIMESTAMP\n,i.CLIENT_PLATFORM\n,i.APPL_NAME\n,i.CLIENT_NNAME\n,i.DB_NAME\n,i.EXECUTION_ID\n,STMT_START\n,STMT_STOP\n,STMT_OPERATION\n,ROWS_READ\n,STMT_TEXT\nFROM\n SYSIBMADM.SNAPAPPL_INFO i\ninner JOIN \n SYSIBMADM.SNAPSTMT s \n on i.agent_id = s.agent_id\nwhere \n i.DB_NAME = 'myDbase'\n;<\/code><\/pre>\n\n\n\n<p>getestet mit IBM DB2 LUW v9.5<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In BI Projekten ist es sehr wichtig, die von den Endanwender abgesetzten bzw. von den BI-Tools generierten SQL Statements analysieren zu k\u00f6nnen. Je nach BI-Tool l\u00e4sst sich das generierte SQL durch allgemeine Einstellungen beeinflussen oder auch durch ein Re-Design des Berichtes optimieren bzw. korrigieren. Die SQL&#8217;s k\u00f6nnen dem Projektteam au\u00dferdem Anhaltspunkte \u00fcber typische Muster von&hellip;&nbsp;<a href=\"https:\/\/konsilium.de\/blog\/2013\/03\/05\/sql-tipp-002-monitoring-sql-statements\/\" class=\"\" rel=\"bookmark\">Weiterlesen &raquo;<span class=\"screen-reader-text\">SQL Tipp #002 \u2013 Monitoring SQL Statements<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":2336,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[9],"tags":[42,41,77],"_links":{"self":[{"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/posts\/109"}],"collection":[{"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/comments?post=109"}],"version-history":[{"count":5,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/posts\/109\/revisions"}],"predecessor-version":[{"id":2676,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/posts\/109\/revisions\/2676"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/media\/2336"}],"wp:attachment":[{"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/media?parent=109"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/categories?post=109"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/konsilium.de\/blog\/wp-json\/wp\/v2\/tags?post=109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}