<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Query Plan &#8211; Database Research &amp; Development</title>
	<atom:link href="https://www.dbrnd.com/tag/query-plan/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbrnd.com</link>
	<description>BIGData &#124; NoSQL &#124; MSSQL &#124; MySQL &#124; PostgreSQL</description>
	<lastBuildDate>Sun, 11 Dec 2016 19:53:41 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>
	<item>
		<title>SQL Server 2016: Introduced Query Store, to monitor the performance differences between query execution plans</title>
		<link>https://www.dbrnd.com/2016/12/sql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query/</link>
		
		<dc:creator><![CDATA[Anvesh Patel]]></dc:creator>
		<pubDate>Sun, 11 Dec 2016 19:53:41 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Anvesh Patel]]></category>
		<category><![CDATA[audit execution plan]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[database research and development]]></category>
		<category><![CDATA[dbrnd]]></category>
		<category><![CDATA[Query executed time]]></category>
		<category><![CDATA[Query Plan]]></category>
		<category><![CDATA[Query State]]></category>
		<category><![CDATA[Query Store]]></category>
		<category><![CDATA[query_store_plan]]></category>
		<category><![CDATA[query_store_query]]></category>
		<category><![CDATA[SQL Query]]></category>
		<category><![CDATA[SQL Server 2016]]></category>
		<category><![CDATA[SQL Server Administrator]]></category>
		<category><![CDATA[SQL Server Monitoring]]></category>
		<category><![CDATA[SQL Server Performance Tunning]]></category>
		<category><![CDATA[SQL Server Tips and Tricks]]></category>
		<category><![CDATA[TSQL]]></category>
		<guid isPermaLink="false">https://www.dbrnd.com/?p=4032</guid>

					<description><![CDATA[SQL Server 2016 introduced a Query Store concept which helps us to monitor the performance differences between the query execution plans. It helps you to track the query plan, run time statistics and history of query plan. You can easily find your new query with the different execution plans and you can identify un-efficient plan [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_pinterest" href="https://www.addtoany.com/add_to/pinterest?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="Pinterest" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_reddit" href="https://www.addtoany.com/add_to/reddit?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="Reddit" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_pocket" href="https://www.addtoany.com/add_to/pocket?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&amp;linkname=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" title="Pocket" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F12%2Fsql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query%2F&#038;title=SQL%20Server%202016%3A%20Introduced%20Query%20Store%2C%20to%20monitor%20the%20performance%20differences%20between%20query%20execution%20plans" data-a2a-url="https://www.dbrnd.com/2016/12/sql-server-2016-introduced-query-store-to-monitor-the-performance-differences-between-query-execution-plans-query_store_plan-query_store_query/" data-a2a-title="SQL Server 2016: Introduced Query Store, to monitor the performance differences between query execution plans"></a></p><p>SQL Server 2016 introduced a Query Store concept which helps us to monitor the performance differences between the query execution plans. </p>
<blockquote><p>It helps you to track the query plan, run time statistics and history of query plan.</p></blockquote>
<blockquote><p>You can easily find your new query with the different execution plans and you can identify un-efficient plan and force for the better execution plan. </p></blockquote>
<blockquote><p>Once you enable the Query Store, It starts to capture a history of queries, plans and other run time statistics. </p>
<p>You can audit the query plans and can find information like: top n queries, CPU/IO/Memory utilization of queries and query executed in a number of times.
</p></blockquote>
<p><strong>Enable the Query Store:</strong></p>
<pre class="crayon-plain-tag">ALTER DATABASE Database_Name SET QUERY_STORE = ON;</pre> </p>
<p><strong>You can use below query to find an information on Query Store:</strong></p>
<pre class="crayon-plain-tag">SELECT Txt.query_text_id, Txt.query_sql_text, Pl.plan_id, Qry.*  
FROM sys.query_store_plan AS Pl  
JOIN sys.query_store_query AS Qry  
    ON Pl.query_id = Qry.query_id  
JOIN sys.query_store_query_text AS Txt  
    ON Qry.query_text_id = Txt.query_text_id;</pre> </p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PostgreSQL: Using EXPLAIN ANALYZE, Know your Query Execution Plan</title>
		<link>https://www.dbrnd.com/2016/09/postgresql-using-explain-analyze-know-your-query-execution-plan/</link>
		
		<dc:creator><![CDATA[Anvesh Patel]]></dc:creator>
		<pubDate>Thu, 08 Sep 2016 20:10:31 +0000</pubDate>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Anvesh Patel]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[database research and development]]></category>
		<category><![CDATA[dbrnd]]></category>
		<category><![CDATA[Execution Plan]]></category>
		<category><![CDATA[EXPLAIN]]></category>
		<category><![CDATA[Explain Analyze]]></category>
		<category><![CDATA[Genetic Query Optimizer]]></category>
		<category><![CDATA[GEQO]]></category>
		<category><![CDATA[plpgsql]]></category>
		<category><![CDATA[Postgres Query]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[PostgreSQL Administrator]]></category>
		<category><![CDATA[PostgreSQL Error]]></category>
		<category><![CDATA[PostgreSQL Programming]]></category>
		<category><![CDATA[PostgreSQL Tips and Tricks]]></category>
		<category><![CDATA[Query Optimizer]]></category>
		<category><![CDATA[Query Plan]]></category>
		<guid isPermaLink="false">https://www.dbrnd.com/?p=3616</guid>

					<description><![CDATA[Like any other RDBMS, PostgreSQL generates a Query Execution Plan for each query that it receives. It is also used Genetic Query Optimizer (GEQO) that does query planning for heuristic search and It reduce query planning time for large and complex queries. An Optimizer always tries to choose a good Query Execution Plan. The structure [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_pinterest" href="https://www.addtoany.com/add_to/pinterest?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="Pinterest" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_reddit" href="https://www.addtoany.com/add_to/reddit?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="Reddit" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_pocket" href="https://www.addtoany.com/add_to/pocket?linkurl=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&amp;linkname=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" title="Pocket" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.dbrnd.com%2F2016%2F09%2Fpostgresql-using-explain-analyze-know-your-query-execution-plan%2F&#038;title=PostgreSQL%3A%20Using%20EXPLAIN%20ANALYZE%2C%20Know%20your%20Query%20Execution%20Plan" data-a2a-url="https://www.dbrnd.com/2016/09/postgresql-using-explain-analyze-know-your-query-execution-plan/" data-a2a-title="PostgreSQL: Using EXPLAIN ANALYZE, Know your Query Execution Plan"></a></p><p>Like any other RDBMS, PostgreSQL generates a Query Execution Plan for each query that it receives. </p>
<blockquote><p>It is also used Genetic Query Optimizer (GEQO) that does query planning for heuristic search and It reduce query planning time for large and complex queries. </p></blockquote>
<p>An Optimizer always tries to choose a good Query Execution Plan.</p>
<blockquote><p>The structure of Query Execution Plan is like a Tree and It contains different information like: type of scan details, join details, sorting details, aggregation details, Estimated rows details, Estimated start-up cost, Estimated total cost and others.</p></blockquote>
<p>To know about the Query Execution Plan, is very important for all Database Professionals because It helps us to improve the Query Performance. </p>
<p>With the help of Query Execution Plan, We can make our decisions on Index tuning, Join tuning and other. </p>
<blockquote><p>In PostgreSQL, we have EXPLAIN and EXPLAIN ANALYZE command to know about the Query Execution Plan.</p></blockquote>
<p>Here, I have used one table tbl_itemtransactions which you can create using below post.</p>
<p><strong>Example of EXPLAIN: </strong>It generates the Estimated Query Execution Plan with out executing an actual SQL Query. </p>
<pre class="crayon-plain-tag">EXPLAIN SELECT COUNT(1) FROM tbl_itemtransactions;

/*
Result: 
"Aggregate  (cost=2555525.00..2555525.01 rows=1 width=0)"
"  -&gt;  Seq Scan on tbl_itemtransactions  
(cost=0.00..2216945.00 rows=135432000 width=0)"
*/</pre> </p>
<p><strong>Example of EXPLAIN ANALYZE:</strong> It first executes the SQL Query and than It generates the actual Query Execution Plan. </p>
<pre class="crayon-plain-tag">EXPLAIN ANALYZE SELECT COUNT(1) FROM tbl_itemtransactions;

/*
Result: 
"Aggregate  (cost=2555525.00..2555525.01 rows=1 width=0) 
(actual time=52660.132..52660.133 rows=1 loops=1)"
"  -&gt;  Seq Scan on tbl_itemtransactions  
(cost=0.00..2216945.00 rows=135432000 width=0) 
(actual time=0.027..46193.484 rows=135432001 loops=1)"
"Planning time: 0.204 ms"
"Execution time: 52660.237 ms"
*/</pre> </p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
