<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3510902444529458646</id><updated>2026-06-21T12:15:15.137+05:30</updated><category term="Full Text"/><category term="Orphan Users"/><title type='text'>SQL CODE BANK</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>365</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-8483800733017731807</id><published>2015-09-09T22:05:00.000+05:30</published><updated>2015-09-09T22:05:05.278+05:30</updated><title type='text'>Changes to SQL Server 2014 AlwaysOn Availability Groups</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
AlwaysOn Availability Groups provide high availability for multiple databases, and they can make use of multiple secondary replicas. Each secondary SQL Server replica has its own copy of the protected databases. AlwaysOn Availability Groups continuously synchronize transactions from the primary replica to each of the secondary replicas. This replication can be configured as synchronous or asynchronous to support local high availability or remote disaster recovery.&lt;br /&gt;
In addition, here are some major enhancements to AlwaysOn Availability Groups in SQL Server 2014 that you might want to be aware of:&lt;br /&gt;
&lt;h3&gt;
                               Enhanced Availability for Read-Only Replicas&lt;/h3&gt;
One of the advantages of AlwaysOn Availability Groups is that the secondary replicas can be used for reporting and backup. With SQL Server 2014, the availability of secondary replicas has been enhanced to allow read workloads to continue to run even in the case of lengthy network failures or the loss of quorum for the Windows Server Failover Cluster.&lt;br /&gt;
&lt;h3&gt;
                               Increased Number of Replicas&lt;/h3&gt;
Another important enhancement in SQL Server 2014 is the increased maximum number of secondaries. SQL Server 2012 supported a maximum of four secondary replicas. With SQL Server 2014, AlwaysOn Availability Groups now supports up to eight secondary replicas. The additional secondary replicas can be used to distribute read workloads and provide enhanced recoverability.&lt;br /&gt;
&lt;h3&gt;
                               Integration with Windows Azure&lt;/h3&gt;
SQL Server 2014 AlwaysOn Availability Groups use Windows Azure in a couple of different ways. On-premises SQL Server instances can use the new Windows Azure configuration options in the AlwaysOn Availability Group wizard to create one or more asynchronous secondary replicas on Windows Azure Infrastructure as a Service (IaaS) services. This enables you to manually fail over to a SQL Server instance running on Windows Azure. As with a typical secondary replica, Windows Azure replicas can be used to offload reporting workloads and to perform backups.&lt;br /&gt;
In addition, you can also use SQL Server 2014 AlwaysOn Availability Groups to provide high availability for SQL Server databases hosted in Windows Azure. SQL Server 2014 instances running on Windows Azure IaaS Services can configure a synchronous secondary replica in Azure for automatic failover in case of server or VM failure.&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Enhanced Diagnostics&lt;/h3&gt;
SQL Server 2014 AlwaysOn Availability Groups diagnostic and troubleshooting message display has been improved to offer more specific information. Additional columns have also been made more discoverable in the AlwaysOn Dashboard.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.microsoft.com/en-us/server-cloud/products/sql-server/&quot;&gt;http://www.microsoft.com/en-us/server-cloud/products/sql-server/&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/8483800733017731807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2015/09/changes-to-sql-server-2014-alwayson.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/8483800733017731807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/8483800733017731807'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2015/09/changes-to-sql-server-2014-alwayson.html' title='Changes to SQL Server 2014 AlwaysOn Availability Groups'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-905909677680085691</id><published>2013-12-26T12:11:00.002+05:30</published><updated>2013-12-26T12:11:20.131+05:30</updated><title type='text'>SQL Server – Performance Top Queries by Total CPU Time </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
select top 10 rank() over(order by total_worker_time desc,sql_handle,statement_start_offset) as row_no&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (rank() over(order by total_worker_time desc,sql_handle,statement_start_offset))%2 as l1&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; creation_time&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; last_execution_time&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (total_worker_time+0.0)/1000 as total_worker_time&lt;br /&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (total_worker_time+0.0)/(execution_count*1000) as [AvgCPUTime]&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total_logical_reads as [LogicalReads]&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total_logical_writes as [logicalWrites]&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; execution_count&lt;br /&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total_logical_reads+total_logical_writes as [AggIO]&lt;br /&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (total_logical_reads+total_logical_writes)/(execution_count + 0.0) as [AvgIO]&lt;br /&gt;,&amp;nbsp;&amp;nbsp; case when sql_handle IS NULL&lt;br /&gt;
then &#39;&#39;&lt;br /&gt;else ( substring(st.text,(qs.statement_start_offset+2)/2,(case when qs.statement_end_offset = -1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; then len(convert(nvarchar(MAX),st.text))*2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else qs.statement_end_offset&amp;nbsp;&amp;nbsp;&amp;nbsp; end - qs.statement_start_offset) /2&amp;nbsp; ) )&lt;br /&gt;end as query_text &lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; db_name(st.dbid) as database_name&lt;br /&gt;
,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; st.objectid as object_id&lt;br /&gt;
from sys.dm_exec_query_stats&amp;nbsp; qs&lt;br /&gt;
cross apply sys.dm_exec_sql_text(sql_handle) st&lt;br /&gt;
where total_worker_time &amp;gt; 0 &lt;br /&gt;
order by total_worker_time&amp;nbsp; desc&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/905909677680085691/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/sql-server-performance-top-queries-by.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/905909677680085691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/905909677680085691'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/sql-server-performance-top-queries-by.html' title='SQL Server – Performance Top Queries by Total CPU Time '/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-2647687194976845024</id><published>2013-12-26T12:06:00.001+05:30</published><updated>2013-12-26T12:06:45.293+05:30</updated><title type='text'>List current SQL Server tempdb statements </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
SELECT ssu.session_id, &lt;br /&gt;(ssu.internal_objects_alloc_page_count + sess_alloc) as allocated, &lt;br /&gt;(ssu.internal_objects_dealloc_page_count + sess_dealloc) as deallocated &lt;br /&gt;, stm.TEXT&lt;br /&gt;from sys.dm_db_session_space_usage as ssu,&amp;nbsp; &lt;br /&gt;sys.dm_exec_requests req&lt;br /&gt;CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS stm ,&lt;br /&gt;(select session_id,&amp;nbsp; &lt;br /&gt;sum(internal_objects_alloc_page_count) as sess_alloc, &lt;br /&gt;sum (internal_objects_dealloc_page_count) as sess_dealloc &lt;br /&gt;from sys.dm_db_task_space_usage group by session_id) as tsk &lt;br /&gt;where ssu.session_id = tsk.session_id &lt;br /&gt;and ssu.session_id &amp;gt;50 &lt;br /&gt;and ssu.session_id = req.session_id &lt;br /&gt;and ssu.database_id = 2 &lt;br /&gt;order by allocated DESC&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/2647687194976845024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/list-current-sql-server-tempdb.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2647687194976845024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2647687194976845024'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/list-current-sql-server-tempdb.html' title='List current SQL Server tempdb statements '/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-925240820138508749</id><published>2013-12-26T11:52:00.000+05:30</published><updated>2013-12-26T11:52:03.433+05:30</updated><title type='text'>How to check for SQL ghost records</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Use the sys.dm_db_index_physical_stats view and check the ghost_record_count column. &lt;br /&gt;
The Ghost record count&amp;nbsp; is the row count in the index leaf level marked for deletion, but not yet deleted by the database engine&lt;br /&gt;&lt;br /&gt;Ghost_record_count is the ghost record count awaiting removal by the ghost cleanup task in the allocation unit.&lt;br /&gt;&lt;br /&gt;Version_Ghost_record_count&amp;nbsp; is the ghost records count sustained by a snapshot isolation transaction in an allocation unit.&lt;br /&gt;
&lt;br /&gt;SELECT&lt;br /&gt;
db_name(database_id),&lt;br /&gt;
object_name(object_id),&lt;br /&gt;
ghost_record_count,&lt;br /&gt;
version_ghost_record_count &lt;br /&gt;
FROM sys.dm_db_index_physical_stats(DB_ID(N&#39;db_name&#39;), OBJECT_ID(N&#39;table_name&#39;), NULL, NULL , &#39;DETAILED&#39;);&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/925240820138508749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/how-to-check-for-sql-ghost-records.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/925240820138508749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/925240820138508749'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/how-to-check-for-sql-ghost-records.html' title='How to check for SQL ghost records'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-7613517267406466278</id><published>2013-12-26T11:49:00.000+05:30</published><updated>2013-12-26T11:49:26.062+05:30</updated><title type='text'>Calculate the Size of Index</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
SELECT ix.[name] AS IndexName,&lt;br /&gt;SUM(ps.[used_page_count]) * 8 AS IndexSize_KB &lt;br /&gt;FROM sys.dm_db_partition_stats AS ps &lt;br /&gt;JOIN sys.indexes AS ix &lt;br /&gt;ON ps.[object_id] = ix.[object_id] &lt;br /&gt;AND ps.[index_id] = ix.[index_id] &lt;br /&gt;GROUP BY ix.[name]&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/7613517267406466278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/calculate-size-of-index.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7613517267406466278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7613517267406466278'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/12/calculate-size-of-index.html' title='Calculate the Size of Index'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-826572327887093241</id><published>2013-09-20T22:42:00.002+05:30</published><updated>2013-09-20T22:42:55.260+05:30</updated><title type='text'>SQLOS&#39;s memory manager and SQL Server&#39;s Buffer Pool</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;SQLOS&#39;s memory manager consists of several components such as memory nodes, memory clerks, memory caches, and memory objects. Fig 1. depicts memory manager components and their relationship:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;----------------  &lt;/span&gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                             | Memory Object | &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                              ----------------  &lt;/span&gt;       &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                                        |&lt;br /&gt;                                        |&lt;br /&gt;                                        V&lt;br /&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                              ----------------  &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                             | Page Allocator | &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                              ----------------  &lt;/span&gt;       &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;          &lt;/span&gt;&lt;/o:p&gt;&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                   /                   \&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                           /                       \&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                          \/                       \/&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
    &lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;       ---------------                  ---------------  &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;          | Memory Clerk |                 |     Caches    |&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;           ---------------                  --------------- &lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;o:p&gt;                              \                    /   &lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;o:p&gt;                               \/                \/&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;o:p&gt;                             ----------------  &lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                             | Memory Node | &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;                             ----------------  &lt;/span&gt;       &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;color: #666666; font-family: Tahoma; font-size: 8pt;&quot;&gt;               Fig. 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;strong&gt;Memory Node&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;A memory node is not exposed to memory manager clients. It is internal SQLOS&#39;s object. The major goal for a memory node is to provide locality of allocation. It consists of several memory allocators. There are three major types of allocators. The first type is a set of page allocators. The second type is virtual allocator leveraging Windows VirtualAlloc APIs. The third type is a shared memory allocator which is fully based on Window&#39;s file mapping APIs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;The page allocators are the most commonly used allocators in SQLOS memory manager. The reason they are called page allocators is because they allocate memory in multiple of SQLOS&#39;s page. A size of a page is 8k, the same as a size of database page in SQL Server. As you will learn further this is not coincidence.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;There are four different types of page allocators. Single page allocator, multi page allocator, large page allocator and reserved page allocator. Single page allocator can only provide one page at the time. Multiple page allocator, as you might guess, provides a set of pages at the time. Large page allocator could be used to allocate large pages. SQLOS and SQL Server use large pages to minimize TLB misses when accessing hot data structures. Currently large pages are supported only on IA64 or x64 hardware with at least 8GB of RAM. A size of a large page on IA64 is 16MB. The last type of page allocators reserved could be used to allocate special set of pages reserved for emergency, i.e. when SQLOS is low on memory. Fig2. shows the memory node and its allocators. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;   &lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;        ----------------------              ----------------               ---------------------------&lt;br /&gt;          | Large Page Allocator |&lt;-------- memory=&quot;&quot; node=&quot;&quot;&gt;| Reserved Page Allocator  |&lt;br /&gt;           ---------------------           /   ----------------  \           ---------------------------&lt;br /&gt;                                                 /               |               \&lt;/--------&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                                               /                 |                 \&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                                             /                   |                   \&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                                           /                     |                     \&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                                         \/                      \/                     \/&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                     --------------------     ----------------------     ----------------------         &lt;br /&gt;                    | VM &amp;amp; SM Allocator |    | Single Page Allocator |    | Multi Page Allocator |&lt;br /&gt;                    --------------------      ----------------------      ---------------------- &lt;br /&gt;           &lt;/span&gt;&lt;/o:p&gt;&lt;span style=&quot;color: #666666; font-family: Tahoma; font-size: 8pt;&quot;&gt;Fig. 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;At this point SQL Server doesn&#39;t have a dmv, dynamic management view, that would dump a set of all memory nodes and information about their allocators. Dbcc memorystatus, discussed further, comes pretty close but it dumps information about cpu nodes not about memory nodes. You might remember that CPU nodes are proper subset of memory nodes. It means that information presented by dbcc memorystatus is sufficient to understand memory distribution on the system. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;strong&gt;Memory Clerks&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Memory nodes are hidden from memory manager users. If a client of memory manager needs to allocate memory it first creates a memory clerk. There are four types of memory clerks such as generic, cache store, user store and object store. The latter three a bit convoluted. Along with memory clerk functionality they provide data caching. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;One can think of a memory clerk as a bag of statistics. It supports the same type of allocators as memory nodes as well as it enables large memory consumers to hook into memory brokerage infrastructure. (I will describe infrastructure in one of the next posts). There are several global memory clerks provided by SQLOS. SQLOS&#39;s middle and large memory consumers are encouraged to use their own clerk so that one could understand memory consumption by a component. Memory clerks infrastructure enables us to track and control amount of memory consumed by a memory component. Each CPU node has a list of memory clerks that we can safely walk during runtime. SQL Server implements sys.dm_os_memory_clerks dmv to dump clerk information. In addition combined clerk information could be derived from dbcc memory status. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;strong&gt;Memory objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;SQLOS&#39;s memory object is a heap. A memory object requires a memory clerk to allocate its memory. We support three types of memory objects. A variable memory objects is a regular heap. An incremental memory object is a mark/shrink heap. This allocation policy is very handy during compilations and execution processes. Usually both of the processes happen in two phases. First phase is to grow memory usage and the second is to shrink memory usage. If the process is isolated we don&#39;t have to call any of destructors when freeing memory. It significantly improves performance. The last type of memory object is fixed size. As you can guess components can use such policy when they need to allocate objects of a given size.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;A payload for a given memory object is 8kb. It is exactly the same as a SQLOS&#39;s page size. It also means that a memory object could be created from memory clerk leveraging single page allocator. (This is yet another very important point! Keep this in mind until I will cover SQL Server&#39;s Buffer Pool) SQL Server exposes a dmv to dump all memory objects in its process: sys.dm_os_memory_objects. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;If you notice both memory clerks and memory objects dmvs expose page allocator column. Also I depicted page allocator in Fig.1. Under the hood memory object uses memory clerks&#39;s page allocator interface to allocate pages. This is useful to know when you want to join memory clerk and memory object dmvs. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;So far I have described how SQLOS&#39;s memory manager structured inside. Now it is time to start talking how all this fits into SQL Server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;strong&gt;Buffer Pool&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Now we got to the point where the life becomes very interesting. In this part all the pieces that I covered so far including memory management should start fall in their places. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Remember SQL Server has two memory settings that you can control using sp_conifigure. They are max and min server memory. I am not sure if you know but these two setting really control the size of the buffer pool. They do not control overall amount of physical memory consumed by SQL Server. In reality we can&#39;t control amount of memory consumed by SQL Server because there could be external components loaded into server&#39;s process.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;When SQL Server starts, during initialization, Buffer Pool first decides how much of VAS it needs to reserve for its usage. It bases its decision on the amount of physical memory, RAM, present on the box. If amount of physical memory is equal or larger than amount of VAS it can use, remember that VAS is limited resource especially on x86, it will leave 256MB of VAS for external components plus a number of threads SQL Server is configured to use multiplied by 512KB. You might remember that 512KB is SQL Server&#39;s thread stack size. In default configuration with physical memory larger than 2GB, Buffer Pool will leave 256MB+256*512KB = 384MB of VAS space. Some people name this region as MemToLeave but in reality it is in correct. SQL Server might end up using this part of VAS itself and I will show you how it could happen latter on. You might also remember -g parameter that some people recommend to use when SQL Server starts outputting &quot;Can&#39;t Reserve Virtual Address Space&quot; errors. First 256MB is exactly what -g parameter controls. If you specify -g 512MB, amount of VAS that BP won&#39;t use is 512MB+256*512KB = 640MB. There is no point in specifying -g 256MB. This input parameter is the same as default value. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Once BP decides amount of VAS it will use. It reserves all of it right a way. To observe such behavior you might want to monitor SQL Server&#39;s virtual bytes from perfmon or you could use vasummary view I talked about in my previous posts. In normal case Buffer Pool can&#39;t get this much memory in one chunk so if you take a closer look at SQL Server&#39;s VAS you will see several large regions reserved. This behavior is very different from many other servers that you might have seen. Some people report it as a VAS leak in SQL Server. In reality this behavior is by design. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Buffer Pool commits pages on demand. Depending on internal memory requirements and external memory state, it calculates its target, amount of memory it thinks it should commit before it can get into memory pressure. To keep system out of paging target is constantly recalculated. Target memory can&#39;t exceed max memory that represents max server memory settings. Even if you set min server memory equal to max server memory Buffer Pool will only commit its memory on demand. You can observe this behavior by monitoring corresponding profiler event. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;The size of SQL Server database page is 8KB. Buffer Pool is a cache of data pages. Consequently Buffer Pool operates on pages of 8KB in size. It commits and decommits memory blocks of 8KB granularity only. If external components decide to borrow memory out of Buffer Pool they can only get blocks of 8KB in size. These blocks are not continues in memeory.  Interesting, right? It means that Buffer Pool can be used as underneath memory manager forSQL Server components as long as they allocate buffers of 8KB. (Sometimes pages allocated from BP are referred as stolen) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Here is where SQLOS and Buffer Pool meet. See Fig.3 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Verdana; font-size: x-small;&quot;&gt;                -----------------&lt;br /&gt;                | Memory Node   |&lt;br /&gt;                -----------------&lt;br /&gt;                          |&lt;br /&gt;                          |&lt;br /&gt;                          V&lt;br /&gt;           ------------------------&lt;br /&gt;           | Single Page Allocator  |&lt;br /&gt;           ------------------------&lt;br /&gt;                          |&lt;br /&gt;                          |&lt;br /&gt;                          V&lt;br /&gt;                -----------------&lt;br /&gt;                |   Buffer Pool    |&lt;br /&gt;                -----------------&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;color: #666666; font-family: Tahoma; font-size: 8pt;&quot;&gt;Fig. 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;SQLOS&#39; memory manager can be dynamically configured to use specific single page allocator. This is exactly what SQL Server does during a startup it configures Buffer Pool to be SQLOS&#39;s single page allocator. From that point on all dynamic single page allocations are provided by Buffer Pool. For example remember that memory object&#39;s payload is 8KB. When a component creates a memory object the allocation is served by SQLOS&#39;s single page allocator which is BP. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;When describing the memory manager I mentioned that every large component has its own memory clerk. It means that Buffer Pool has its own memory clerk as well. How is it possible, BP leverages SQLOS memory clerk but SQLOS&#39; memory manager relies on BP? This is common chicken and egg problem that you often can observe in operating systems. The key here is that Buffer Pool never uses any type of page allocator from SQLOS. It only leverages Virtual and AWE SQLOS&#39;s interfaces.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;           -----------------&lt;br /&gt;          |    Buffer Pool    |&lt;br /&gt;          -----------------&lt;br /&gt;                    |&lt;br /&gt;                    |&lt;br /&gt;                    V&lt;br /&gt;     --------------------------&lt;br /&gt;     | Memory Clerk (VM/AWE) |&lt;br /&gt;     --------------------------&lt;br /&gt;                    |&lt;br /&gt;                    |&lt;br /&gt;                    V&lt;br /&gt;          -----------------&lt;br /&gt;          | Memory Node   |&lt;br /&gt;          -----------------&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;color: #666666; font-family: Tahoma; font-size: 8pt;&quot;&gt;Fig. 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;All SQL Server&#39;s components optimized for 8KB allocations so that they can allocate memory through SQLOS&#39;s single page allocator and consequently through Buffer Pool. However there are cases when a component requires large buffers. If it happens allocation will be either satisfied by memory node&#39;s multi page allocator or by virtual allocator. As you might guess that memory will be allocated outside of Buffer Pool. This is exactly why I don’t like term MemToLeave, SQL Server does allocate memory out of that area!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt; mso-outline-level: 1;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&lt;strong&gt;Buffer Pool and AWE mechanism&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;When describing SQLOS memory manager and Buffer Pool, the discussion would be incomplete without describtion of how AWE fits in all of this. It is really important to understand how Buffer Pool allocates its memory when SQL Server configured to use AWE mechanisms. First, please remember, BP leverages SQLOS&#39;s memory clerk interfaces to allocate both VAS and physical pages through AWE. Second, there are several differences that you need to keep in mind. First BP reserves VAS in 4MB chunks instead of &quot;single&quot; large region. This enables SQL Server to release VAS when process is under VAS pressure. (We didn&#39;t have all bits and pieces to do this when server is not configured to use AWE mechanisms). Then it allocates all of its memory using AWE mechanism on demand. This is very big difference between SQL2000 and &lt;st1:state w:st=&quot;on&quot;&gt;&lt;st1:place w:st=&quot;on&quot;&gt;Yukon&lt;/st1:place&gt;&lt;/st1:state&gt;. In SQL Server 2000 BP would allocate all of its memory when using AWE mechanism right a way. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;margin: 0in 0in 0pt 0.5in; mso-outline-level: 2;&quot;&gt;
&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Buffer Pool is a preferred memory allocator for the whole server. In AWE mode it allocates its memory leveraging AWE mechanism. It means that all allocations allocated through SQLOS&#39;s single page allocator will come from pages allocated through AWE. This is what many people really missing. Let me make the point again: When Server is configured for AWE mode, most of it allocations are allocated through AWE mechanism. This is exactly the reason why you won&#39;t see private bytes and memory usage growing for SQL Server in this mode. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&amp;nbsp;&lt;span style=&quot;font-family: Verdana; font-size: 10pt;&quot;&gt;Since data pages are use relative addressing, i.e. self contained, Buffer Pool can map and unmap them into and out of process&#39;s VAS. Other components could have done the same if they were not relying on the actual allocation address. Unfortunately there are no components right now other than BP that can take advantage of AWE mechanism. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/826572327887093241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sqloss-memory-manager-and-sql-servers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/826572327887093241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/826572327887093241'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sqloss-memory-manager-and-sql-servers.html' title='SQLOS&#39;s memory manager and SQL Server&#39;s Buffer Pool'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-8288709160227960040</id><published>2013-09-20T22:15:00.004+05:30</published><updated>2013-09-20T22:15:35.609+05:30</updated><title type='text'>Optimising System Memory for SQL Server</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;strong&gt;Virtual Memory and Memory Management&lt;/strong&gt;&lt;br /&gt;
On the x86 family of processors, all processes are provided with 4Gb of  virtual memory. By default, the first 2Gb is allocated to the operating system  kernel and the latter 2Gb to the user process. This virtual memory isn’t real ‘physical’ memory – as processes make memory allocations, physical storage is  provided, mixed between physical memory and the system paging file*. Windows  transparently handles copying data to and from the paging file, so that the  application can allocate more memory than physically exists in the machine and,  so multiple applications can have equal access to the machine’s physical  RAM.&lt;br /&gt;
* (this is how multiple applications can run on a system with 512Mb of RAM,  each with a virtual address space of 4GB – it’s not real memory, but it seems  like it to the application)&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Tuning Virtual Memory&lt;/strong&gt;&lt;br /&gt;
Windows NT 4.0 introduced the concept of the /3Gb switch (added to the  [operating systems] section of the boot.ini file), which allows system  administrators to modify the allocation of virtual memory between the OS and  user processes. By adding the /3GB switch (and restarting), Windows will  allocate just 1Gb to the kernel mode address space, allowing a process’s user  mode address space to increase to 3Gb.&lt;br /&gt;
In addition to the /3GB switch, Windows XP, Windows Server 2003 &amp;amp; 2008  includes the /USERVA switch. This allows finer granularity over the amount of  virtual memory provided, to the kernel mode and user mode address space. To use  the /USERVA switch, simply indicate how much memory should be provided for user  mode address space.  For example, /USERVA=2560 configures 2.5GB for user mode  space and leaves the remaining 1.5GB for the kernel. When using the /USERVA  switch, the /3GB switch must also be present.&lt;br /&gt;
To add either the the /3GB or /USERVA switches, go to &lt;strong&gt;System  Properties -&amp;gt; Startup and Recovery&lt;/strong&gt; and click Edit under System  Startup. Once reconfigured, you’re [operating systems] section should look  something like this:&lt;br /&gt;
&lt;blockquote&gt;
&lt;code&gt;[operating systems]&lt;br /&gt;multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=&quot;Windows Server 2003, Enterprise&quot;  /noexecute=optout /fastdetect&lt;strong&gt; /3GB&lt;/strong&gt;&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;[operating systems]&lt;br /&gt;multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=&quot;Windows Server 2003, Enterprise&quot;  /noexecute=optout /fastdetect&lt;strong&gt; /3GB  /USERVA=2560&lt;/strong&gt;&lt;/code&gt;&lt;/blockquote&gt;
More information on the /3GB and /USERVA switches can be found in the  Microsoft KB articles &lt;a href=&quot;http://support.microsoft.com/kb/316739&quot; target=&quot;_blank&quot; title=&quot;How to use the /userva switch with the /3GB switch to tune the User-mode space to a value between 2 GB and 3 GB&quot;&gt;316739&lt;/a&gt; and &lt;a href=&quot;http://support.microsoft.com/kb/810371&quot; target=&quot;_blank&quot; title=&quot;Using the /Userva switch on Windows Server 2003-based computers that are running Exchange Server&quot;&gt;810371&lt;/a&gt;.&lt;br /&gt;
&lt;strong&gt;Utilising all Physical Memory: Physical Address Extension  (PAE)&lt;/strong&gt;&lt;br /&gt;
PAE support was added by Intel starting with the Pentium Pro family and  later* and provides a memory-mapping model, which allows Windows to access to up  to 64Gb of physical memory, rather than the standard 4Gb. In PAE mode, the  memory management unit implements page directory entries (PDEs) and page table  entries (PTEs) that are 36-bits wide (rather than the standard 32-bits) and adds  a page directory pointer table to manage these high-capacity tables and indexes  into them, allowing the operating system to recognise up to 64Gb.&lt;br /&gt;
In practice, this means that although Windows processes are still given a 4Gb  allocation of virtual memory (virtual memory is still allocated using 32-bit  pointers, limiting their maximum size to 4Gb), multiple processes can  immediately benefit from the increased RAM as they are less likely to encounter  physical memory restrictions and begin paging.&lt;br /&gt;
A specific version of the Windows kernel is required to use PAE, either  Ntkrnlpa.exe for uniprocessor systems, or Ntkrpamp.exe for multiprocessor  systems, both are located in the \i386\Driver.cab file. No additional work needs  to be undertaken by the system administrator, apart from adding the &lt;strong&gt;/PAE &lt;/strong&gt;switch in a similar fashion to the /3GB or /USERVA switches. If however  you are running hardware that supports &lt;a href=&quot;http://www.microsoft.com/whdc/system/pnppwr/hotadd/hotaddmem.mspx&quot; target=&quot;_blank&quot; title=&quot;Hot-Add Memory Support in Windows Server 2003&quot;&gt;hot-adding  memory&lt;/a&gt; , the PAE switch will be added by default (hot-add memory is only  supported by Windows Server 2003 Enterprise and Datacenter editions). Note:  64-bit versions of Windows do not support PAE. The PAE switch can be added with  or without the /3GB switch, as detailed later.&lt;br /&gt;
To manually add the PAE switch add the following to your boot.ini file:&lt;br /&gt;
&lt;blockquote&gt;
&lt;code&gt;[operating systems]&lt;br /&gt;multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=&quot;Windows Server 2003, Enterprise&quot;  /noexecute=optout /fastdetect&lt;strong&gt; /PAE&lt;/strong&gt;&lt;/code&gt;&lt;/blockquote&gt;
The following table details the maximum physical memory that a Windows  version can recognise, with the PAE switch enabled:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Windows 2000 Server – 4Gb Maximum&lt;/li&gt;
&lt;li&gt;Windows 2000 Advanced Server – 8Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows 2000 Datacenter Server – 32Gb RAM Maximum&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Windows Server 2003 Web Edition – 2Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2003 Standard Edition – 4Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2003 Enterprise Edition – 32Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2003 Datacenter Edition – 64Gb RAM Maximum&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Windows Server 2008 Web Edition – 4Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2008 Standard Edition – 4Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2008 Enterprise Edition – 64Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2008 Datacenter Edition – 64Gb RAM Maximum&lt;/li&gt;
&lt;li&gt;Windows Server 2008 Datacenter Edition (Server Core) – 64Gb RAM Maximum&lt;/li&gt;
&lt;/ul&gt;
Unless you have a system with more than 4Gb of physical memory, there is  little point in enabling PAE; however, PAE can be enabled on Windows XP SP2,  Windows Server 2003 and later 32-bit versions of Windows, to support hardware  enforced &lt;a href=&quot;http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/sp2mempr.mspx&quot; target=&quot;_blank&quot;&gt;Data Execution Prevention (DEP)&lt;/a&gt;.&lt;br /&gt;
I’ve provided only a brief overview of the Physical Address Extensions here;  for more background reading please see the following: Microsoft KB articles &lt;a href=&quot;http://support.microsoft.com/kb/283037&quot; target=&quot;_blank&quot; title=&quot;Large memory support is available in Windows Server 2003 and in Windows 2000&quot;&gt;283037 &lt;/a&gt;and &lt;a href=&quot;http://support.microsoft.com/kb/268363/&quot; target=&quot;_blank&quot; title=&quot;Intel Physical Addressing Extensions (PAE) in Windows 2000&quot;&gt;268363&lt;/a&gt;,  Windows Hardware Developer Central article &lt;a href=&quot;http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx&quot; target=&quot;_blank&quot; title=&quot;Physical Address Extension - PAE Memory and Windows&quot;&gt;Physical Address Extension – PAE Memory and Windows&lt;/a&gt;.&lt;br /&gt;
* the PAE extension is supported on AMD chipsets, although I can’t find any  hard evidence on the AMD website.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Addressing Windows Extensions (AWE)&lt;/strong&gt;&lt;br /&gt;
Unlike the PAE switch, the AWE facility in Windows exists to allow &lt;em&gt;applications&lt;/em&gt; – such as SQL Server&lt;em&gt; – &lt;/em&gt;to access more than 4GB of  physical memory. AWE removes the 4Gb physical memory limit of 32-bit software  architecture by enabling code to allocate large chunks of physical memory and  then, map access to the physical memory into a window of virtual memory that is  32-bit addressable. Because AWE allows the OS to allocate memory above the 4Gb  boundary, there is little point enabling it on a system with 4Gb or less of  physical RAM.&lt;br /&gt;
One thing to note with AWE memory is that it is never swapped to the system  paging file (i.e. disk). If you review the AWE API, you’ll see that the methods  refer to physical memory allocation: AWE memory is physical memory that is never  swapped to or from the system paging file.  This explains why that in order to  use the ‘Use AWE to Allocate Memory’ flag in SQL Server, requires the ‘Lock  Pages in Memory’ Local Security Policy setting (see &lt;a href=&quot;http://www.modhul.com/2007/11/08/using-address-windowing-extensions-awe-with-sql-server/&quot; target=&quot;_blank&quot; title=&quot;Using Address Windowing Extensions (AWE) with SQL Server&quot;&gt;Using Address Windowing Extensions (AWE) with SQL Server&lt;/a&gt;) – pages can only be locked in memory if this local security policy is set. This  also explains why (or how) applications such as SQL Server, Exchange etc. when  using AWE to allocate memory can consume such great amounts of physical RAM.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Best Practice Configurations&lt;/strong&gt;&lt;br /&gt;
Based on the information provided above, Microsoft recommend the following  physical memory / operating system memory switch combinations:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;4Gb Physical RAM – /3GB switch (or /USERVA switch)&lt;/li&gt;
&lt;li&gt;&amp;gt; 4Gb Physical RAM – /3GB and /PAE switch&lt;/li&gt;
&lt;li&gt;&amp;gt; 16Gb Physical RAM – /PAE switch&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;A Final Note about the /3GB Switch&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;
You will notice that in the table above recommends that a server with greater  than 16Gb of physical RAM should not be configured with the /3GB switch. When  you apply the /3GB switch, you limit the size of the virtual memory address  space available to the kernel to 1Gb (from the usual 2Gb), which is too small  for the virtual memory manager to store the memory mapping tables needed to  access more than 16Gb of RAM. As a result, the memory manager imposes a virtual  memory limit of 16 GB on a system with both the /3GB and /PAE enabled. Even if a  system has 32 GB or more of physical memory, if both options are enabled, only  16 GB of memory will be recognised.&lt;br /&gt;
However, although 16Gb is a hard upper limit imposed by the kernel, most  workloads will actually show decreased throughput on systems with &lt;a href=&quot;http://www.mydatabasesupport.com/forums/893846-post2.html&quot; target=&quot;_blank&quot; title=&quot;Re: 16GB RAM AWE Failover vs. Stop/Start VirtInst w/3gb /pae ini&quot;&gt;12Gb of memory&lt;/a&gt;, and many on systems/workloads with as low as  8GB of memory. Therefore, ensure you thoroughly test the use of the /3GB switch  within you UAT/reference environment before applying it to live systems.&lt;br /&gt;
I’m going to close Part I here because there is plenty for the reader to take  onboard before we start to look at how these considerations affect SQL Server.  Part II will be &lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/8288709160227960040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/optimising-system-memory-for-sql-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/8288709160227960040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/8288709160227960040'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/optimising-system-memory-for-sql-server.html' title='Optimising System Memory for SQL Server'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-1570047548070679133</id><published>2013-09-20T22:05:00.000+05:30</published><updated>2013-09-20T22:05:08.849+05:30</updated><title type='text'>SQL SERVER  Architecture – Terminology</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The major components of SQL Server are:&lt;/div&gt;
&lt;ol style=&quot;text-align: justify;&quot;&gt;
&lt;li&gt;Relational Engine&lt;/li&gt;
&lt;li&gt;Storage Engine&lt;/li&gt;
&lt;li&gt;SQL OS&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Now we will discuss and understand each one of them.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
1) Relational Engine: &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Also called as the query processor, Relational Engine includes the components of SQL Server that determine what your query exactly needs to do and the best way to do it. It manages the execution of queries as it requests data from the storage engine and processes the results returned.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Different Tasks of Relational Engine:&lt;/div&gt;
&lt;ol style=&quot;text-align: justify;&quot;&gt;
&lt;li&gt;Query Processing&lt;/li&gt;
&lt;li&gt;Memory Management&lt;/li&gt;
&lt;li&gt;Thread and Task Management&lt;/li&gt;
&lt;li&gt;Buffer Management&lt;/li&gt;
&lt;li&gt;Distributed Query Processing&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
2) Storage Engine: &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Storage Engine is responsible for storage and retrieval of the data &lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_8bc48dc3e41d61ecf902f445c5961e2b740503e9_on to:0&quot;&gt;on to&lt;/span&gt; the storage system (Disk, SAN etc.). &lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_ae1c22b7ad9de06a34638bbde6985a5c3383c647_to:0&quot;&gt;to&lt;/span&gt; understand more, let’s focus on the concepts.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
When we talk about any database in SQL server, there are 2 types of files that are created at the disk level – &lt;em&gt;Data file and Log file&lt;/em&gt;. Data file physically stores the data in data pages. Log files that are also known as write ahead logs, are used for storing transactions performed on the database.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Let’s understand data file and log file in more details:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;strong&gt;Data File&lt;/strong&gt;: &lt;em&gt;Data File&lt;/em&gt; stores data in the form of &lt;em&gt;&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_1040d0c702306edcb269ac24206dda9c9b24dc1f_Data Page:0&quot;&gt;Data Page&lt;/span&gt;&lt;/em&gt; (8KB) and these data pages are logically organized in extents.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;strong&gt;Extents&lt;/strong&gt;: Extents are logical units in the database. They are a combination of 8 data pages i.e. 64 KB forms an extent. Extents can be of two types, Mixed and Uniform. Mixed extents hold different types of pages like index, system, data &lt;span class=&quot;GRspelling&quot;&gt;etc&lt;/span&gt; (multiple objects). On the other hand, Uniform extents are dedicated to only one type (object).&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;strong&gt;Pages&lt;/strong&gt;: As we should know what type of data pages can be stored in SQL Server, below mentioned are some of them:&lt;/div&gt;
&lt;ul style=&quot;text-align: justify;&quot;&gt;
&lt;li&gt;Data Page: It holds the data entered by the user but not the data which &lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_9fe79aba4cb9f6f4af6d40eed641eeb970b6b887_is:0&quot;&gt;is&lt;/span&gt; of type text, ntext, nvarchar&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_9fe79aba4cb9f6f4af6d40eed641eeb970b6b887_(:1&quot;&gt;(&lt;/span&gt;max), varchar&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_9fe79aba4cb9f6f4af6d40eed641eeb970b6b887_(:2&quot;&gt;(&lt;/span&gt;max), varbinary&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_9fe79aba4cb9f6f4af6d40eed641eeb970b6b887_(:3&quot;&gt;(&lt;/span&gt;max), image and xml data.&lt;/li&gt;
&lt;li&gt;Index: It stores the index entries.&lt;/li&gt;
&lt;li&gt;Text/Image: It stores LOB ( Large Object data) like text, ntext, varchar&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_b1bcac44169c8d7f827eed60bc049e72d9e6cf1e_(:0&quot;&gt;(&lt;/span&gt;max), nvarchar&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_b1bcac44169c8d7f827eed60bc049e72d9e6cf1e_(:1&quot;&gt;(&lt;/span&gt;max),  varbinary&lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_b1bcac44169c8d7f827eed60bc049e72d9e6cf1e_(:2&quot;&gt;(&lt;/span&gt;max), image and xml data.&lt;/li&gt;
&lt;li&gt;GAM &amp;amp; SGAM (Global Allocation Map &amp;amp; Shared Global Allocation Map): They are used for saving information related to the allocation of extents.&lt;/li&gt;
&lt;li&gt;PFS (Page Free Space): Information related to page allocation and unused space available on &lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_437a786b667db97ed1dde165e4cf7783801ebb2e_pages:0&quot;&gt;pages&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;IAM (Index Allocation Map): Information pertaining to extents that are used by a table or index per allocation unit.&lt;/li&gt;
&lt;li&gt;BCM (Bulk Changed Map): Keeps information about the extents changed in a Bulk Operation.&lt;/li&gt;
&lt;li&gt;DCM (Differential Change Map): This is the information of extents that have modified since the last BACKUP DATABASE statement as per allocation unit.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;strong&gt;Log File&lt;/strong&gt;: It &lt;span class=&quot;GRcorrect&quot; id=&quot;GRmark_8c52439d23b83c05f4b24a84931048e3a09e542d_also known:0&quot;&gt;also known&lt;/span&gt; as write ahead log. It stores modification to the database (DML and DDL).&lt;/div&gt;
&lt;ul style=&quot;text-align: justify;&quot;&gt;
&lt;li&gt;Sufficient information is logged to be able to:&lt;ul&gt;
&lt;li&gt;Roll back transactions if requested&lt;/li&gt;
&lt;li&gt;Recover the database in case of failure&lt;/li&gt;
&lt;li&gt;Write Ahead Logging is used to create log entries&lt;ul&gt;
&lt;li&gt;Transaction logs are written in chronological order in a circular way&lt;/li&gt;
&lt;li&gt;Truncation policy for logs is based on the recovery model&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;strong&gt;SQL OS&lt;/strong&gt;: &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This lies between the host machine (Windows OS) and SQL Server. All the activities performed on database engine are taken care of by SQL OS. It is a highly configurable operating system with powerful API (application programming interface), enabling automatic locality and advanced parallelism. SQL OS provides various operating system services, such as memory management deals with buffer pool, log buffer and deadlock detection using the blocking and locking structure. Other services include exception handling, hosting for external components like Common Language Runtime, CLR etc.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/1570047548070679133/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sql-server-architecture-terminology.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1570047548070679133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1570047548070679133'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sql-server-architecture-terminology.html' title='SQL SERVER  Architecture – Terminology'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-2654650467620875191</id><published>2013-09-20T21:56:00.000+05:30</published><updated>2013-09-20T22:01:29.955+05:30</updated><title type='text'>SQL Server 2014: A Closer Look</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;a href=&quot;http://www.microsoft.com/en-us/sqlserver/sql-server-2014.aspx?WT.mc_id=Blog_SSQL_TechEdNA_SQL2014&quot; target=&quot;_blank&quot;&gt;Microsoft SQL Server 2014&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; was announced by &lt;/span&gt;&lt;a href=&quot;http://blogs.technet.com/b/dataplatforminsider/archive/2013/06/03/sql-server-2014-unlocking-real-time-insights.aspx&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Quentin Clark&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; during the Microsoft TechEd 2013 keynote. Designed and developed with our cloud-first principles in mind, SQL Server 2014 builds on the momentum of SQL Server 2012, released just 14 months ago. We are excited to share a closer look at some of the exciting capabilities included in SQL Server 2014 that will help you unlock real-time insights with mission critical and cloud performance.&lt;b&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;SQL Server 2014 helps organizations by delivering:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b&gt;Mission Critical Performance&lt;/b&gt; across all database workloads with In-Memory for online transaction processing (OLTP), data warehousing and business intelligence built-in as well as greater scale and availability&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b&gt;Platform for Hybrid Cloud &lt;/b&gt;enabling organizations to more easily build, deploy and manage database solutions that span on-premises and cloud&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b&gt;Faster Insights from Any Data &lt;/b&gt;with a complete BI solution using familiar tools like Excel &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;u&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Mission Critical Performance with SQL Server 2014&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;SQL Server 2014 delivers new in-memory capabilities built into the core database for OLTP and data warehousing, which complement existing in-memory data warehousing and business intelligence capabilities for a comprehensive in-memory database solution. In addition to in-memory, there are new capabilities to improve the performance and scalability for your mission critical applications.&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;In Memory Built-In&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;New In-Memory OLTP – built in to core SQL Server database and uniquely flexible to work with traditional SQL Server tables allowing you to improve performance of your database applications without having to refresh your existing hardware. We are seeing customers such as &lt;/span&gt;&lt;a href=&quot;http://youtu.be/fHTj274pu48&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;EdgeNet&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; and &lt;/span&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=nO200qJ_i-Y&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;bwin&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; achieve significant performance gains to scale and accelerate their business.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Enhanced In-Memory ColumnStore for Data Warehousing – now updatable with even faster query speeds and with greater data compression for more real-time analytics support.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;New buffer pool extension support to non-volatile memory such as solid state drives (SSDs) – Increase performance by extending SQL Server in-memory buffer pool to SSDs for faster paging. &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;New Enhanced Query Processing – speeds all SQL Server queries regardless of workload.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Enhanced Availability, Security and Scalability&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Enhanced AlwaysOn – Built upon the significant capabilities introduced with SQL Server 2012, delivers mission critical availability with up to 8 readable secondaries and no downtime during online indexing operations.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Greater scalability of compute, networking and storage with Windows Server 2012 R2 –&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;- Increased scale – Continue to benefit from scale for up to 640 logical processors and 4TB of memory in a physical environment and up to 64 virtual processors and 1TB of memory per VM. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;- Network Virtualization – Abstracts networking layer so that it you can easily migrate SQL Server from one datacenter to another. &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;- Storage Virtualization with Storage Spaces – Create pools of storage and storage tiers allowing your hot data to access the premium storage and cold data to access standard storage improving resilience, performance and predictability. &lt;/span&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Enhanced Resource Governance – With Resource Governor, SQL Server today helps you with scalability and predictable performance, and in SQL Server 2014, new capabilities allow you to manage IO, in addition to compute and memory to provide more predictable performance.&lt;u&gt;&lt;/u&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Enhanced Separation of Duties – Achieve greater compliance with new capabilities for creating role and sub-roles. For example, a database administrator can now manage the data without seeing sensitive data or personally identifiable information.&lt;b&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Platform for Hybrid Cloud&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;SQL Server 2014 creates a strong platform for hybrid cloud where cloud scale can be leveraged to extend the scalability and availability of on-premises database applications as well as reduce costs.&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Simplified Cloud Backup and Disaster Recovery&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Backup to Azure Storage – reduce costs and achieve greater data protection by backing up your on-premises database to Azure Storage at an instance level. Optimize backup policy with intelligence built in to SQL Server that monitors and tracks backup usage patterns to provide optimal cloud backup. Backups can be automatic or manual, and in case of an on-premises failure, a backup can be restored to a Windows Azure Virtual Machine. &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;AlwaysOn integration with Windows Azure Infrastructure Services – Benefit from Microsoft’s global data centers by deploying a Windows Azure Virtual Machine as an AlwaysOn secondary for cost-effective global data protection. Increase performance and scale reporting for your global business units by running reporting off the readable secondaries in Windows Azure. Run backups on the secondaries in Windows Azure to increase data protection and performance.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;SSMS Wizard for deploying AlwaysOn secondaries in Window Azure – Easily deploy an AlwaysOn secondaries to Windows Azure Virtual Machine with a point and click experience within SQL Server Management Studio (SSMS). &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Easy Migration of On-Premises SQL Servers to Windows Azure Virtual Machines&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;SSMS Migration Wizard for Windows Azure Infrastructure Services – Easily migrate an on-premises SQL Server database to a Windows Azure Virtual machine with a point and click experience in SSMS. The newly deployed database application can be managed through SSMS or System Center 2012 R2. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;u&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Faster Insights on Any Data&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;SQL Server 2014 is at the heart of our modern data platform which delivers a comprehensive BI solution that simplifies access to all data types big and small with additional solutions like &lt;/span&gt;&lt;a href=&quot;http://www.microsoft.com/en-us/sqlserver/solutions-technologies/business-intelligence/big-data.aspx?WT.mc_id=Blog_SSQL_TechEdNA_SQL2014&quot; target=&quot;_blank&quot;&gt;HDInsight&lt;/a&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;, Microsoft’s 100% Apache compatible Hadoop distribution and project code name “Data Explorer”, which simplifies access to internal or external data. New data platform capabilities like Polybase included in Microsoft Parallel Data Warehouse allows you to integrate queries across relational and non-relational data using your existing SQL Server skills.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;With SQL Server 2014, you can accelerate insights with our new in-memory capabilities with faster performance across workloads. You can continue to refine and manage data using Data Quality Services and Analysis Services in SQL Server and finally analyze the data and unlock insights with powerful BI tools built into Excel and SharePoint.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/2654650467620875191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sql-server-2014-closer-look.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2654650467620875191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2654650467620875191'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/sql-server-2014-closer-look.html' title='SQL Server 2014: A Closer Look'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-6165514940117731335</id><published>2013-09-20T21:54:00.000+05:30</published><updated>2013-09-20T21:54:30.105+05:30</updated><title type='text'>What is the difference between Checkpoint and Lazy Writer</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;

&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; mso-border-insideh: 4.5pt thin-thick-small-gap windowtext; mso-border-insidev: 4.5pt thin-thick-small-gap windowtext; mso-cellspacing: 0in; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184;&quot;&gt;
 &lt;tbody&gt;
&lt;tr style=&quot;mso-yfti-firstrow: yes; mso-yfti-irow: 0;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Row&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 1;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint is used
  by sql engine to keep database recovery time in check&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer is used
  by SQL engine only to make sure there is enough memory left in sql buffer
  pool to accommodate new pages&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 2;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Check point always
  mark entry in T-log before it executes either sql engine or manually&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer doesn’t
  mark any entry in T-log&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 3;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;To check occurrence
  of checkpoint , we can use below query&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;br /&gt;
  &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;select * from
  ::fn_dblog(null,null) &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;br /&gt;
  &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;WHERE [Operation] like
  ‘%CKPT’&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;

  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;To check occurrence
  of lazy writer we can use performance monitor&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;br /&gt;
  &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;SQL Server Buffer
  Manager &lt;b&gt;Lazy writes/sec&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 4;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint only
  check if page is dirty or not&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer clears
  any page from memory when it satisfies all of 3 conditions.&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;1.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Memory is required
  by any object and available memory is full&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;2.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Cost factor of page
  is zero&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;3.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Page is not
  currently reference by any connection&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 5;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;5&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint is
  affected by two parameters&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;1.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint duration:
  is how long the checkpoint can run for.&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;2.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Recovery interval:
  affects how often it runs.&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer is
  affected by&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;1.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Memory pressure&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 5pt; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: Arial;&quot;&gt;2.&lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 7pt; mso-fareast-font-family: Arial;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Reference counter of
  page in memory&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 6;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Check point should
  not be very low , it can cause increasing recovery time of database&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;No. of times lazy
  writer is executing per second should always be low else it will show memory
  pressure&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 7;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;7&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint will run
  as per defined frequency&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;No memory pressure,
  no lazy writer&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 8;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;8&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint tries to
  write as many pages as fast as possible&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer tries to
  write as few as necessary&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 9;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;9&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;checkpoint process
  does not put the buffer page back on the free list&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer scans
  the buffer cache and reclaim unused pages and put it n free list&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 10;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;We can find last run
  entry of checkpoint in Boot page&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer doesn’t
  update boot page&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 11;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;11&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint can be
  executed by user manually or by SQL engine&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer cant be
  controlled by user&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 12;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;12&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;It keeps no. of
  dirty pages in memory to minimum&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;It helps to reduce
  paging&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 13;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;13&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Auto frequency can
  be controlled using recovery interval in sp_configure&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Works only @ memory
  pressure , It uses clock algorithm for cleaning buffer cache&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 14;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;14&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;It will be automatically
  executed before every sql statement which requires consistent view of
  database to perform task like (Alter, backup, checkdb, snapshot …..)&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;It kicks pages out
  of memory when reference counter of page reaches to zero&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 15;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Command : Checkpoint&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;No command available&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 16;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;16&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;It comes in picture
  to find min lsn whenever t-log truncates&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;No entry in T-log&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 17;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;17&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Checkpoint is
  affected by Database recovery model&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Lazy writer doesn’t
  get impacted with recovery model of database&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 18;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;18&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;To get checkpoint
  entry in error log&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;br /&gt;
  &lt;/span&gt;&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;DBCC TRACEON(3502,
  -1)&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Not Applied&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 19; mso-yfti-lastrow: yes;&quot;&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 25.8pt;&quot; width=&quot;34&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;19&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 2.2in;&quot; width=&quot;211&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Members of the
  SYSADMIN, DB_OWNER and DB_BACKUPOPERATOR can execute checkpoint maually&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;background-color: transparent; border: 4.5pt double windowtext; mso-border-alt: thin-thick-small-gap windowtext 4.5pt; padding: 0in; width: 185.4pt;&quot; width=&quot;247&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9.5pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Not Applied&lt;/span&gt;&lt;span style=&quot;color: #666666; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 9pt; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/6165514940117731335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/what-is-difference-between-checkpoint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/6165514940117731335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/6165514940117731335'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/09/what-is-difference-between-checkpoint.html' title='What is the difference between Checkpoint and Lazy Writer'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-1068748053249767031</id><published>2013-08-07T20:38:00.002+05:30</published><updated>2013-08-07T20:38:25.391+05:30</updated><title type='text'>How do I fix &quot;Cannot connect to WMI Provider&quot; error?</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;strong&gt;&lt;span style=&quot;background-color: white; color: blue;&quot;&gt;The following article explains how to fix the following error message:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;

&lt;br /&gt;
&lt;em&gt;Cannot connect to WMI provider. You do not have permission or the server 
is unreachable.&lt;br /&gt;Note that you can only manage SQL Server &lt;span style=&quot;color: black;&quot;&gt;2005&lt;/span&gt; servers with 
SQL Server Configuration Manager.&lt;br /&gt;Invalid Namespace.&lt;/em&gt; &lt;br /&gt;

&lt;br /&gt;
This error is caused when the .mof files are damaged during the MS SQL Server 
2005 installation. The error will typically occur when trying to run the MS SQL 
2005 Configuration Manager. This error can be resolved by running a command line 
script.&lt;br /&gt;

&lt;br /&gt;
To fix this error, please follow these steps:&lt;br /&gt;

&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Log into your server through Remote Desktop Connection (instructions for 
connecting to your server through RDC can be found &lt;a href=&quot;http://www.hosting.com/support/vps/windows/rdc/&quot; title=&quot;How do I connect to my VPS?&quot;&gt;here&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;From the &lt;strong&gt;Start&lt;/strong&gt; menu, select &lt;strong&gt;Run&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Type &lt;strong&gt;cmd&lt;/strong&gt; and click &lt;strong&gt;OK&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Change to the directory c:\Program Files\Microsoft SQL 
Server\90\Shared\&lt;/li&gt;
&lt;li&gt;Type &lt;strong&gt;&lt;span style=&quot;color: magenta;&quot;&gt;mofcomp &quot;C:\Program Files\Microsoft SQL 
Server\90\Shared\sqlmgmproviderxpsp2up.mof&quot;&lt;/span&gt;&lt;/strong&gt; and press &lt;strong&gt;enter&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
Refer MS KB article: &lt;a href=&quot;http://support.microsoft.com/kb/956013&quot;&gt;http://support.microsoft.com/kb/956013&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
You should no longer receive the above error message.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/1068748053249767031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/08/how-do-i-fix-cannot-connect-to-wmi.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1068748053249767031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1068748053249767031'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/08/how-do-i-fix-cannot-connect-to-wmi.html' title='How do I fix &quot;Cannot connect to WMI Provider&quot; error?'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-1613686730032135193</id><published>2013-06-07T19:14:00.004+05:30</published><updated>2013-06-07T20:15:58.651+05:30</updated><title type='text'>Configure  SSIS to use  Named Instances</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
SQL Server family has various services like Database Services (SQL Server), Analysis Services, Reporting Services which supports Named Instance of the services but there are few others like Integration Services which does support named instance. This means, we can have one and only one service of Integration Services on each server.&lt;br /&gt;
&lt;br /&gt;
By default, the MSDB folder of Integration Services points to MSDB of default instance of SQL Server. But we can change this to point any (one or more than one) named instance of SQL server.&lt;br /&gt;
&lt;br /&gt;
To point MSDB folder of Integration Services to any other instance of SQL Server, we need to change the configuration file (MsDtsSrvr.ini.xml). Following are the steps to do that:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;1.Browse the file MsDtsSrvr.ini.xml. Depending on Version of SQL Server installed, you can get this at C:\Microsoft SQL Server\90\DTS\ or C:\Microsoft SQL Server\100\DTS\ &lt;br /&gt;
&lt;br /&gt;
2.Create a backup copy of the file.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;3.Open the configuration file in a text editor like BIDS, NotePad.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;4.To configure a named instance instead of the default instance, change the existing ServerName entry to ServerName\InstanceName under the Folder node of type SQLServerFolder.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;5.To configure a named instance in addition to the default instance, add a new Folder node of type SQLServerFolder under the TopLevelFolders node.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;6.Save and close the configuration file.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;7.Restart the SSIS service.&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/1613686730032135193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/06/configure-ssis-to-use-nmed-istances.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1613686730032135193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/1613686730032135193'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/06/configure-ssis-to-use-nmed-istances.html' title='Configure  SSIS to use  Named Instances'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-4624528278150786478</id><published>2013-05-24T18:33:00.006+05:30</published><updated>2013-05-24T18:33:57.025+05:30</updated><title type='text'>Important Scripts to find out Replication details.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;Script to run on Distribution database&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
This script returns completed setup replication information. Unless an orphan article exists, this will return a complete set of replication information. I also added the distribution agent job name to show how easy it is to pull in other configuration information.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;USE Distribution&lt;br /&gt;GO&lt;br /&gt;SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED&lt;br /&gt;-- Get the publication name based on article&lt;br /&gt;SELECT DISTINCT &lt;br /&gt;srv.srvname publication_server &lt;br /&gt;, a.publisher_db&lt;br /&gt;, p.publication publication_name&lt;br /&gt;, a.article&lt;br /&gt;, a.destination_object&lt;br /&gt;, ss.srvname subscription_server&lt;br /&gt;, s.subscriber_db&lt;br /&gt;, da.name AS distribution_agent_job_name&lt;br /&gt;FROM MSArticles a &lt;br /&gt;JOIN MSpublications p ON a.publication_id = p.publication_id&lt;br /&gt;JOIN MSsubscriptions s ON p.publication_id = s.publication_id&lt;br /&gt;JOIN master..sysservers ss ON s.subscriber_id = ss.srvid&lt;br /&gt;JOIN master..sysservers srv ON srv.srvid = p.publisher_id&lt;br /&gt;JOIN MSdistribution_agents da ON da.publisher_id = p.publisher_id &lt;br /&gt;AND da.subscriber_id = s.subscriber_id&lt;br /&gt;ORDER BY 1,2,3&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;Script to run on Publisher database&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;color: black;&quot;&gt;This script returns what publications has been setup. This will go through all the published databases and return information if the database has replication enabled. Sometimes, I just want to see the publication name and subscriber server names (no articles) to see what servers are being used with replication other times I want all of the information, so I added a variable called @Detail and if you set @Detail = &#39;Y&#39; it will return data with the article list. Any other value will only return the publisherDB, publisherName and SubscriberServerName.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;-- Run from Publisher Database &lt;br /&gt;-- Get information for all databases&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;br /&gt;DECLARE @Detail CHAR(1)&lt;br /&gt;SET @Detail = &#39;Y&#39;&lt;br /&gt;CREATE TABLE #tmp_replcationInfo (&lt;br /&gt;PublisherDB VARCHAR(128), &lt;br /&gt;PublisherName VARCHAR(128),&lt;br /&gt;TableName VARCHAR(128),&lt;br /&gt;SubscriberServerName VARCHAR(128),&lt;br /&gt;)&lt;br /&gt;EXEC sp_msforeachdb &lt;br /&gt;&#39;use ?;&lt;br /&gt;IF DATABASEPROPERTYEX ( db_name() , &#39;&#39;IsPublished&#39;&#39; ) = 1&lt;br /&gt;insert into #tmp_replcationInfo&lt;br /&gt;select &lt;br /&gt;db_name() PublisherDB&lt;br /&gt;, sp.name as PublisherName&lt;br /&gt;, sa.name as TableName&lt;br /&gt;, UPPER(srv.srvname) as SubscriberServerName&lt;br /&gt;from dbo.syspublications sp &lt;br /&gt;join dbo.sysarticles sa on sp.pubid = sa.pubid&lt;br /&gt;join dbo.syssubscriptions s on sa.artid = s.artid&lt;br /&gt;join master.dbo.sysservers srv on s.srvid = srv.srvid&lt;br /&gt;&#39;&lt;br /&gt;IF @Detail = &#39;Y&#39;&lt;br /&gt;&amp;nbsp;&amp;nbsp; SELECT * FROM #tmp_replcationInfo&lt;br /&gt;ELSE&lt;br /&gt;SELECT DISTINCT &lt;br /&gt;PublisherDB&lt;br /&gt;,PublisherName&lt;br /&gt;,SubscriberServerName &lt;br /&gt;FROM #tmp_replcationInfo&lt;br /&gt;DROP TABLE #tmp_replcationInfo&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;color: red;&quot;&gt;Script to run on Subscriber database&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;This script returns what article(s) is/are being replicated to the subscriber database. I also use this to find orphaned subscribers. This is rather simple since there is not much information to pull.&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;-- Run from Subscriber Database&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;color: blue;&quot;&gt;SELECT distinct publisher, publisher_db, publication&lt;br /&gt;FROM dbo.MSreplication_subscriptions&lt;br /&gt;ORDER BY 1,2,3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: red;&quot;&gt;The following scripts will provide the name of the database on which merge replication is setup&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: blue;&quot;&gt;select namefromsys.databaseswhereis_merge_published= 1&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/4624528278150786478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/important-scripts-to-find-out_24.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4624528278150786478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4624528278150786478'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/important-scripts-to-find-out_24.html' title='Important Scripts to find out Replication details.'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-7015795043427328097</id><published>2013-05-24T18:27:00.001+05:30</published><updated>2013-05-24T18:27:21.706+05:30</updated><title type='text'>Drop article from  Existing Publication (Transactional Replication)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
EXEC sp_dropsubscription&lt;br /&gt;@publication = &#39;Publication name&#39;,&lt;br /&gt;@article = N&#39;Table Name&#39;,&lt;br /&gt;@subscriber = &#39;Subscriber Server Name&#39;;&lt;br /&gt;&amp;nbsp;GO&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;EXEC sp_droparticle&lt;br /&gt;&amp;nbsp;@publication = &#39;Publication name&#39;,&lt;br /&gt;&amp;nbsp;@article = N&#39;Table Name&#39;,&lt;br /&gt;&amp;nbsp;@force_invalidate_snapshot = 0&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/7015795043427328097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/drop-article-from-existing-publication.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7015795043427328097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7015795043427328097'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/drop-article-from-existing-publication.html' title='Drop article from  Existing Publication (Transactional Replication)'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-7589603377054415284</id><published>2013-05-24T18:25:00.001+05:30</published><updated>2013-05-24T18:25:42.342+05:30</updated><title type='text'>Adding new article to Existing Publication (Transactional Replication)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoListParagraph&quot; style=&quot;margin: 0in 0in 10pt 0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;font-family: Calibri;&quot;&gt;&lt;b&gt;&lt;span style=&quot;background: white; color: #333333; font-size: 14pt; line-height: 115%; mso-bidi-font-family: Helvetica;&quot;&gt;Adding new
article to Existing Publication (Transactional Replication)&lt;/span&gt;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;First of all run the Exec
sp_helppublication in publication database and checked the following fields&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;1. Immediate_sync&lt;br /&gt;
2. Allow_anonymous&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;&lt;br /&gt;
Both the fields were set to ON as they showed a value 1 which is enabled. If
the Immediate_sync is enabled, every time you add a new article it will cause
the entire snapshot to be applied and not the one for the particular article
alone. Usually, the Immediate_sync publication property is set to true if we
allowed anonymous subscriptions while creating the publication through the
Create Publication wizard. To prevent the complete snapshot, run the script
below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;Step 1:- Disable the two fields in
publication database &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;EXEC
sp_changepublication&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@publication =&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;‘&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: red; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Publication name’&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@property = N&#39;allow_anonymous&#39;,&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@value = &#39;false&#39;&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;GO&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br style=&quot;mso-special-character: line-break;&quot; /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;br style=&quot;mso-special-character: line-break;&quot; /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;EXEC
sp_changepublication&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@publication =&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: red; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Publication name’&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@property = N&#39;immediate_sync&#39;,&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;@value = &#39;false&#39;&lt;/span&gt;&lt;span style=&quot;background: white; color: #444444; font-size: 8pt; mso-bidi-font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: #000099; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 8pt;&quot;&gt;GO&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;Step 2:- Add new article in publication
database &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; exec&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt; &lt;span style=&quot;color: maroon;&quot;&gt;sp_addarticle&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @publication
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: red; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;Publication name’&lt;/span&gt;&lt;span style=&quot;color: grey; font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @article
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Table Name&#39;&lt;/span&gt;&lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@source_object
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Table Name&#39;&lt;/span&gt;&lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;@destination_table
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Table Name&#39;&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: blue; font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;GO&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt; mso-layout-grid-align: none; text-indent: 0.5in;&quot;&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;exec&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt; &lt;span style=&quot;color: maroon;&quot;&gt;sp_addsubscription&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;@publication
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background: white; color: red; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;Publication name’,&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;@subscriber
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Subscriber Server
Name&#39;&lt;/span&gt;&lt;span style=&quot;color: grey;&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;@destination_db
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Destination
Database Name&#39;&lt;/span&gt;&lt;span style=&quot;color: grey;&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;@subscription_type
&lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;N&#39;Subcription Type&#39;
[Pull\Push]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;


&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 0pt 0.5in;&quot;&gt;
&lt;span style=&quot;background: white; color: #444444; font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;Step 3:- Now start the snapshot
agent in publisher, it worked perfectly. You can see that only the particular
table added was replicated. So from now on to apply the snapshots of the entire
articles you need to reinitialize the subscriptions since the Immediate_sync is
set to off.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/7589603377054415284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/adding-new-article-to-existing.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7589603377054415284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7589603377054415284'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/adding-new-article-to-existing.html' title='Adding new article to Existing Publication (Transactional Replication)'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-665156166513938196</id><published>2013-05-10T19:43:00.001+05:30</published><updated>2013-05-10T19:43:43.076+05:30</updated><title type='text'>IBM’s entrant in the SQL-on-Hadoop </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;

&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;IBM’s entrant in
the SQL-on-Hadoop competition has been flying under the radar, but is available
as a technology preview. Called Big SQL, it’s a big deal if IBM wants to be a
major player in the Hadoop space.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;IBM has a SQL-on-Hadoop product
in the works called Big SQL. The company &lt;a href=&quot;https://www.ibm.com/developerworks/community/blogs/SusanVisser/entry/introducing_the_ibm_big_sql_technology_preview1?lang=en&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;announced
the technology preview version in March&lt;/span&gt;&lt;/a&gt;, and is offering up a cloud-based
demo environment for a select group of early users.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;As a refresher, the big
difference between SQL on Hadoop and the Hadoop connectors that were popular a
couple years ago is that SQL-on-Hadoop products query the data where it resides
— in HDFS or HBase — rather than pulling it into a relational database
environment to analyze it.&amp;nbsp;We have been &lt;a href=&quot;http://gigaom.com/2013/04/30/with-impala-now-ga-clouderas-ceo-sizes-up-the-sql-on-hadoop-market/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;talking
for months about the emergence of a large SQL-on-Hadoop market&lt;/span&gt;&lt;/a&gt;, but IBM’s
name was conspicuously absent from that discussion. The company has Hadoop
software called BigInsights and lots of SQL expertise, so it only made sense
that IBM would get into the game at some point.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;Details on Big SQL are still
pretty sparse save for a few high-level blog posts and an instructional video
(embedded below), but it looks to take the standard approach, &lt;a href=&quot;http://gigaom.com/2013/04/30/with-impala-now-ga-clouderas-ceo-sizes-up-the-sql-on-hadoop-market/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;as
Cloudera is doing with Impala&lt;/span&gt;&lt;/a&gt;, of enabling access through traditional tools
via JDBC and ODBC drivers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;Ultimately, I think the advent of
big data will &lt;a href=&quot;http://gigaom.com/2013/05/01/precog-launches-with-a-plan-to-simplify-analytics-on-unstructured-data/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;enable
some new types of querying techniques&lt;/span&gt;&lt;/a&gt; quite a bit different than the SQL queries
we’ve come to know and love over the past couple decades. But SQL is still the
language du jour and might never go away, so there’s a lot of value to be had
if people can put their SQL skills to work on data stored inside Hadoop or
other environments, and if companies can work toward a nirvana &lt;a href=&quot;http://gigaom.com/2013/02/25/emc-to-hadoop-competition-see-ya-wouldnt-wanna-be-ya/&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;where
all the data is stored in a single place&lt;/span&gt;&lt;/a&gt; rather than across database
environments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;br /&gt;
&lt;span lang=&quot;EN&quot; style=&quot;mso-ansi-language: EN;&quot;&gt;That IBM got this message and got
into the game isn’t surprising at all, but it is important. Lots of large
companies buy IBM’s software. &amp;nbsp;If it wants them to follow it into the
world of big data and Hadoop, it has to give them the tools they need to use
it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;


&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/665156166513938196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/ibms-entrant-in-sql-on-hadoop.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/665156166513938196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/665156166513938196'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/ibms-entrant-in-sql-on-hadoop.html' title='IBM’s entrant in the SQL-on-Hadoop '/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-4529303070012673204</id><published>2013-05-08T22:55:00.001+05:30</published><updated>2013-05-21T17:04:07.771+05:30</updated><title type='text'>NuoDB Starlings Release 1.1</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 0in 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Today NuoDB announced the immediate availability of the NuoDB
Starlings Release 1.1.&amp;nbsp; The new release features .NET &amp;amp; Windows 64-bit
support helping developers who wish to avoid the &lt;b&gt;&lt;a href=&quot;http://jasonhall.blogs.sqlsentry.net/2012/08/my-perspective-top-5-most-common-sql.html&quot;&gt;&lt;span style=&quot;color: #c1cd23; font-size: 9pt; line-height: 135%; text-decoration: none; text-underline: none;&quot;&gt;common scalability and performance issues&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;
associated with traditional databases.&amp;nbsp; And that’s not all.&amp;nbsp; We’ve
addressed three areas of customer need.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 7.5pt 0in 0pt;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;The new
release delivers user benefit in 3 key areas:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Microsoft 64-bit and .NET
support&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Substantial performance
and productivity enhancements&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;User experience
improvements.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 0in 0in 0pt;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;What’s New in 1.1&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 7.5pt 0in 0pt;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: red; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Microsoft Enhancements&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;em&gt;&lt;/em&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;64 bit support for
Windows Server, Windows 7 and 8 for high performance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Full support for Visual
Studio 2012, LINQ and Entity Framework for a more integrated developer
experience&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;.NET driver to avoid the &lt;b&gt;&lt;a href=&quot;http://jasonhall.blogs.sqlsentry.net/2012/08/my-perspective-top-5-most-common-sql.html&quot;&gt;&lt;span style=&quot;color: #c1cd23; font-size: 9pt; line-height: 135%; text-decoration: none; text-underline: none;&quot;&gt;common scalability and performance issues&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;
associated with Microsoft SQL Server&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Azure compatibility for
running/deploying NuoDB easily in the cloud.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 7.5pt 0in 0pt;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Productivity &amp;amp; Performance Improvements&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;33% increase in scale-out
performance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;20-50% improvement for
heavy workloads&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Built-in schema browsing
and querying for Integrated SQL development&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Database demand
simulation tools, including a sample eCommerce schema and configurable load scenarios
for improved provisioning of both predictable and unpredictable web traffic.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 7.5pt 0in 0pt;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;Improved User Experience&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l1 level1 lfo3; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;New NuoDB DevCenter– a
central, easy to use location for all NuoDB developer resources, now integrated
with the NuoDB Console for faster access&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: 135%; margin: 3.75pt 0in 10pt; mso-list: l1 level1 lfo3; mso-margin-bottom-alt: auto; tab-stops: list .5in; text-indent: -0.25in;&quot;&gt;
&lt;span style=&quot;color: #363d45; font-family: &amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10.5pt; line-height: 135%; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;&quot;&gt;&amp;nbsp;SQL Explorer fully
integrated into the NuoDB Console for dropping and creating web tables without
ever leaving the browser.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0in 0in 10pt;&quot;&gt;
&lt;o:p&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/4529303070012673204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/nuodb-starlings-release-11.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4529303070012673204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4529303070012673204'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/nuodb-starlings-release-11.html' title='NuoDB Starlings Release 1.1'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-7566953895669137911</id><published>2013-05-08T16:47:00.001+05:30</published><updated>2013-05-08T16:48:03.713+05:30</updated><title type='text'>Find All Databases name with Size</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
SELECT d.name,&lt;br /&gt;
ROUND(SUM(mf.size) * 8 / 1024, 0) Size_MBs&lt;br /&gt;
FROM sys.master_files mf&lt;br /&gt;
INNER JOIN sys.databases d ON d.database_id = mf.database_id&lt;br /&gt;
WHERE d.database_id &amp;gt; 4 -- Skip system databases&lt;br /&gt;
GROUP BY d.name&lt;br /&gt;
ORDER BY d.name&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/7566953895669137911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/find-database-name-with-size.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7566953895669137911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/7566953895669137911'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/find-database-name-with-size.html' title='Find All Databases name with Size'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-126629515256028247</id><published>2013-05-03T19:53:00.005+05:30</published><updated>2013-05-03T19:53:56.178+05:30</updated><title type='text'>How Many Tables in a Database Having Column Name like ‘Name’.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
USE AdventureWorks2008R2&lt;br /&gt;GO&lt;br /&gt;
&lt;br /&gt;
SELECT t.name AS table_name,&lt;br /&gt;SCHEMA_NAME(schema_id) AS schema_name,&lt;br /&gt;c.name AS column_name&lt;br /&gt;FROM sys.tables AS t&lt;br /&gt;INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID&lt;br /&gt;WHERE c.name LIKE &lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;%name%&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;&lt;/span&gt;&lt;br /&gt;ORDER BY schema_name, table_name;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/126629515256028247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/how-many-tables-in-database-having.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/126629515256028247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/126629515256028247'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/how-many-tables-in-database-having.html' title='How Many Tables in a Database Having Column Name like ‘Name’.'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-6597128085208692925</id><published>2013-05-03T19:46:00.000+05:30</published><updated>2013-05-03T19:46:07.965+05:30</updated><title type='text'>Select columns with NULL values only</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
declare @col varchar(255), @cmd varchar(max)&lt;br /&gt;
DECLARE getinfo cursor for&lt;br /&gt;SELECT c.name FROM sys.tables t JOIN sys.columns c ON t.Object_ID = c.Object_ID&lt;br /&gt;WHERE t.Name =&lt;span style=&quot;color: red;&quot;&gt; &lt;strong&gt;&#39;TABLE_1&#39;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
OPEN getinfo&lt;br /&gt;
FETCH NEXT FROM getinfo into @col&lt;br /&gt;
WHILE @@FETCH_STATUS = 0&lt;br /&gt;BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT @cmd = &#39;IF NOT EXISTS (SELECT top 1 * FROM &lt;span style=&quot;color: red;&quot;&gt;&lt;strong&gt;TABLE_1&lt;/strong&gt;&lt;/span&gt; WHERE [&#39; + @col + &#39;] IS NOT NULL) BEGIN print &#39;&#39;&#39; + @col + &#39;&#39;&#39; end&#39;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXEC(@cmd)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; FETCH NEXT FROM getinfo into @col&lt;br /&gt;END&lt;br /&gt;
CLOSE getinfo&lt;br /&gt;DEALLOCATE getinfo&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/6597128085208692925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/select-columns-with-null-values-only.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/6597128085208692925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/6597128085208692925'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/select-columns-with-null-values-only.html' title='Select columns with NULL values only'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-2858835149454579767</id><published>2013-05-02T17:28:00.003+05:30</published><updated>2013-05-02T17:30:04.215+05:30</updated><title type='text'>Memory - Performance Counters</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
SQL Server provides numerous counters for monitoring and evaluating performance of your system. Although there are no hard and fast rules for performance monitoring, you should audit your system periodically to ensure that it lives up to user expectations. The first step in performance monitoring efforts should be collecting baseline information. A baseline has a collection of performance counter values while the system isn&#39;t heavily utilized and performs well. Next you should take benchmarks at various times of day and during different days of week to figure out acceptable ranges for the performance counters you intend to monitor. For example, your tests could reveal that buffer cache hit ratio values between 93.5% and higher are acceptable, but any value below 93.5% indicates sub-optimal performance. &lt;br /&gt;
&lt;br /&gt;
Then setup continuous monitoring and define alerts which notify you if any performance counter values fall below (or rise above) a predefined threshold. Although we try to provide some guidelines for performance counter values adequate range for each counter will vary from one environment to next; this is why it&#39;s important to create a baseline and determine acceptable values for each counter. &lt;br /&gt;
&lt;br /&gt;
You should watch several memory related counters very closely as they present a clear indication of acceptable or sub-optimal performance. Memory bottleneck typically leads to excessive paging. You can reduce or eliminate memory related performance issues by:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Adding memory to the server computer. &lt;/li&gt;
&lt;li&gt;Altering SQL Server and operating system configuration.&lt;/li&gt;
&lt;li&gt;Eliminating unnecessary processes on the database server.&lt;/li&gt;
&lt;li&gt;Directing some user activity from the current server to another server.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
A large majority of these memory performance counters are available through Memory Manager, Plan Cache and Buffer Manager objects. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
SQL Server Buffer Manager provides the following counters:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;AWE lookup maps / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of times per second data pages requested by SQL Server were found in the buffer pool and then mapped as AWE memory and made part of server&#39;s virtual address space.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;AWE stolen maps / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of times data pages were taken from the free list in buffer pool and mapped as AWE memory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;AWE unmap calls / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
When a buffer is unmapped it is excluded from virtual address space; buffers are unmapped because they haven&#39;t been used and to make room for new buffers. This counter shows the number of times buffers were un-mapped per second.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;AWE unmap pages / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of data pages unmapped per second.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;AWE write maps / sec&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
Shows the number of times per second that it is necessary to map in a dirty buffer so it can be written to disk. This means that no free buffers are available so SQL Server has to write to a &quot;dirty&quot; buffer, meaning a buffer that contains data changes. If the value is high, then the server could use additional memory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: AWE related counters are only available if AWE enabled option is turned on.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Buffer cache hit ratio&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
Percentage of pages that were found in the buffer pool without having to incur a read from disk. The ratio is calculated as total number of cache hits divided by the total number of cache lookups over the last few thousand page accesses. Since reading from the cache is much less expensive than reading from disk, servers that have a high buffer cache hit ratio perform well. For optimal performance this ratio should remain above 99%. However, in most environments a number above 95% is acceptable. If you use AWE enabled option you should never see this counter drop below 99% unless the total amount of RAM is not sufficient for your application&#39;s load.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Checkpoint pages per second&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows how many pages are flushed per second by the CHECKPOINT process. If this value is too high, then you might want to increase the recovery interval or dedicate more RAM to SQL Server. By increasing the value of recovery interval, you advise SQL Server to checkpoint the databases less frequently thereby reserving more resources for user applications. The flip side of the coin, however, is that databases will take longer to recover in case of server failure (recovery process entails rolling back failed transactions and rolling forward the successful transactions).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Database pages&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of pages in the buffer pool with database content. The higher the value of this counter, the more queries are sent to your server. If the number keeps increasing considerably above your baseline, consider allowing more memory for SQL Server usage by modifying the value of &quot;max server memory&quot; setting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Free list stalls / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of times a request for a &quot;free&quot; page had to wait for one to become available. High value indicates that the server could use additional memory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Lazy writes / sec&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
How many times per second lazy writer has to flush dirty pages out of the buffer cache instead of waiting on a checkpoint. Typically dirty pages are flushed out of cache by the checkpoint process. If the value of this counter is higher than 20, then server could use additional RAM.&lt;br /&gt;
&lt;br /&gt;
Look at Lazy Writes/sec which tells you that number of times the buffer pool flushed dirty pages to disk outside of the CHECKPOINT process.&amp;nbsp; This should be near zero.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Page life expectancy&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows on average how long each data page is staying in buffer cache before being flushed out to make room for other pages. If value is less than 300 seconds than additional memory could be helpful.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Page lookups / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of requests per second to find the page in the buffer pool.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Page reads / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of data pages read per second.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Page writes / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of data pages written per second.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Readahead pages / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of data pages read per second in anticipation of their use.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Procedure cache pages&lt;/span&gt; &lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of pages used to store compiled queries; indicates the total number of stored procedures in cache.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Reserved pages&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of buffer pool reserved pages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Stolen pages&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
Number of pages acquired from buffer cache and used for miscellaneous server purposes (including procedure cache).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Target pages&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the ideal number of pages in buffer pool.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Total pages&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
Total number of pages in buffer pool (including data pages, free and stolen pages).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another group of important memory related counters are exposed through Cache Manager object in SQL Server 2000 and Plan Cache object with SQL Server 2005. These objects allow you to monitor the memory usage for storing ad-hoc Transact-SQL statements, stored procedures and triggers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Cache Hit Ratio&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Ratio between cache hits and lookups. The value of this counter should never fall below 90%.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Cache Object Counts&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of objects in cache.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Cache Pages&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of 8KB pages in cache.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Cache Objects in use&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the number of objects in cache that are currently being used.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Each counter has the following instances:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;_total - information on all types of instances.&lt;/li&gt;
&lt;li&gt;SQL Plans - query plans for ad-hoc Transact-SQL statements, or Transact-SQL statements prepared using sp_prepare or sp_cursorprepare system procedures. The execution plans are cached for reuse by identical statements executed at a later time. With SQL Server 2000 this instance is called &quot;ad hoc SQL Plans&quot;.&lt;/li&gt;
&lt;li&gt;Object Plans - query plans for stored procedures, user-defined functions and triggers. With SQL Server 2000 this instance is further broken down into procedure plans, replication procedure plans and trigger plans.&lt;/li&gt;
&lt;li&gt;Bound Trees - normalized trees for views, rules, computed columns and check constraints. With SQL Server 2000 this instance is called &quot;misc. Normalized Trees&quot;.&lt;/li&gt;
&lt;li&gt;Extended stored procedures - if you use extended procedures this instance will show the number of these objects referenced in cache.&lt;/li&gt;
&lt;li&gt;Temporary tables &amp;amp; table variables - information for temp tables and table variables referenced in cache.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
SQL Server Memory Manager object exposes the following counters: &lt;br /&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Connection Memory&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Total amount of dynamic memory the server is using for maintaining connections&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Granted Workspace Memory&lt;/span&gt;&lt;/b&gt;      &lt;br /&gt;
&lt;br /&gt;
Total amount of memory currently granted to executing processes such as hash, sort, bulk copy, and index creation operations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Lock Blocks&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
A lock block is a single locked object - a table, row, page, etc. This counter shows the total number of currently used lock blocks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Lock Blocks Allocated&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Current number of allocated lock blocks. By default SQL Server allocates locks dynamically as needed. However, you can override the default behavior by modifying locks configuration parameter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Memory Grants Outstanding&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of processes that have successfully acquired workspace memory grant. High value of this counter indicates peak user activity.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Memory Grants Pending&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Number of processes waiting on a workspace memory grant. If this counter has a high value SQL Server could benefit from additional memory. You should first examine the database design, queries and indexes however to ensure the system is properly tuned before purchasing additional RAM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Optimizer Memory&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Memory reserved for query optimization. Ideally, the value of this counter should remain relatively static. If this isn&#39;t the case you might be using dynamic SQL execution excessively.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;SQL Cache Memory&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Total memory reserved for dynamic SQL statements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Target Server Memory&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Total amount of memory in KB that the server can consume.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Total Server Memory&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
The amount of committed memory in KB from the buffer pool. If this counter has a high values, as compared to the total amount of RAM available on server then SQL Server can benefit from additional memory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Target Server Memory counter shows SQL Server estimate of how much RAM it would need to operate effectively. The total memory counter shows what is actually used. The goal is to keep total memory less than target memory. If over time total memory number is higher than target your server could benefit from additional RAM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In addition to examining SQL Server specific counters related to memory, you should also inspect the value of the following operating system level counters:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;Total Server Memory (KB) counter&amp;nbsp; &amp;lt; Target Server Memory (KB) counter=That means&amp;nbsp; SQL Server has enough memory to run efficiently&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;Total Server Memory (KB) counter is &amp;gt;= Target Server Memory (KB) counter = This indicates that SQL Server may be under memory pressure and could use access to more physical memory.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Page faults / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the average number of pages faulted per second. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays. You need to ensure this value stays as low as possible.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Pages / sec&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the rate at which pages are read from or written to disk to resolve hard page faults. This counter is a primary indicator of the kinds of faults that cause system-wide delays. Although some spikes are normal the value of this counter should remain close to zero.&lt;br /&gt;
&lt;br /&gt;
Look at Free Pages/sec and Free List Stalls/sec.&amp;nbsp; You don&#39;t want to see Free Pages bottom out which will result in a Free List Stall while the buffer pool has to free pages for usage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Available Bytes&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
The amount of physical memory, in bytes, immediately available for allocation to a process or for system use. Your system should maintain at least 50MB of available memory. If the value falls below this threshold then the server is short on memory or the application (SQL Server) isn&#39;t releasing the memory back to the operating system as it should.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Process: Working Set&lt;/span&gt;&lt;/b&gt;     &lt;br /&gt;
&lt;br /&gt;
Shows the current size of the Working Set of the process in bytes. The Working Set is the set of memory pages touched recently by the threads in the SQL Server process. If the value of this counter is consistently below the amount configured by min server memory option then SQL Server is configured to have more memory than it really needs.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/2858835149454579767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/sql-server-provides-numerous-counters.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2858835149454579767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2858835149454579767'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/05/sql-server-provides-numerous-counters.html' title='Memory - Performance Counters'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-2723086050344838736</id><published>2013-04-30T23:00:00.002+05:30</published><updated>2013-04-30T23:03:24.356+05:30</updated><title type='text'>Cloudera’s CEO sizes up the SQL-on-Hadoop market</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Cloudera’s Impala engine for interactive SQL queries on Hadoop data is now generally available, and CEO Mike Olson gives his lay of the competitive landscape.&lt;br /&gt;
&lt;br /&gt;
There is no shortage of confidence in the Hadoop space, and market leader Cloudera bolstered its own on Tuesday with the general availability of its Impala SQL query engine for Hadoop. And if CEO Mike Olson’s comments are any indication, we’re in for a long ride of competitive jockeying and oneupmanship as Cloudera and its peers go all Microsoft or Google and create myriad new data-processing engines to turn their Hadoop distributions into bona fide platforms.&lt;br /&gt;
Launched as a private beta in May 2012 and &lt;a href=&quot;http://gigaom.com/2012/10/24/cloudera-makes-sql-a-first-class-citizen-in-hadoop/&quot;&gt;made public in October&lt;/a&gt;, Impala is Cloudera’s attempt to address the growing demand for interactive SQL analytics on Hadoop data. It’s essentially a massively parallel database designed to share the same storage platform and metadata as Hadoop MapReduce, only it is its own separate processing engine.&lt;br /&gt;
&lt;br /&gt;
Impala actually uses the same “nearly ANSI” version of SQL as does current standard bearer Hive, but that technology (created by Facebook in 2009 as a data warehouse layer for Hadoop) doesn’t run nearly fast enough to sate many users’ desire for interactive analytics. This is because Hive transforms SQL queries into MapReduce jobs, meaning every one is processed against the entire corpus of data in the Hadoop Distributed File System.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgry7s4x5buKp2OhbpT1xb7HvqNz_-0H8JOOcXBklyFcD26GGek7H410w9tNT6iIqHCxlGH0UEOadRNGLtFI2p9Vdmo7Hu9AfFQJ28kYLoUATR6Rti-M7WlFevdcsiyidv3YZcNvelvWCE/s1600/sql.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;586&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgry7s4x5buKp2OhbpT1xb7HvqNz_-0H8JOOcXBklyFcD26GGek7H410w9tNT6iIqHCxlGH0UEOadRNGLtFI2p9Vdmo7Hu9AfFQJ28kYLoUATR6Rti-M7WlFevdcsiyidv3YZcNvelvWCE/s640/sql.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;Sizing up the competition&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
Only Cloudera isn’t the first to have the idea, &lt;a href=&quot;http://gigaom.com/2013/02/21/sql-is-whats-next-for-hadoop-heres-whos-doing-it/&quot;&gt;nor is it alone in trying to sell interactive SQL on Hadoop&lt;/a&gt;. The idea was &lt;a href=&quot;http://gigaom.com/2011/10/21/hadapt-raises-9-5m-for-hadoop-data-warehouse/&quot;&gt;first commercialized by Boston-based startup Hadapt&lt;/a&gt; in 2011, and is now being pushed by numerous startups and larger Hadoop players. Among them: Pivotal (formerly EMC) Greenplum, MapR (with &lt;a href=&quot;http://gigaom.com/2012/08/17/for-fast-interactive-hadoop-queries-drill-may-be-the-answer/&quot;&gt;Drill&lt;/a&gt;), Hortonworks (with &lt;a href=&quot;http://hortonworks.com/blog/100x-faster-hive/&quot;&gt;Stinger&lt;/a&gt;), Drawn to Scale, Splice Machine, Jethro Data and Citus Data.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCJ7AV3WoLwME-hM4trMDWwMAFDj81z_gF0QVdzcVkjlWtqv6YqlH666MYetelR0j2Ci5U9fXIjTLPIocR1ttvzhxQZcd4VnI7GUKqradLn5X-Hdny6aEDffech-0GaOScwiaXEjB8rp8/s1600/sql1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;318&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCJ7AV3WoLwME-hM4trMDWwMAFDj81z_gF0QVdzcVkjlWtqv6YqlH666MYetelR0j2Ci5U9fXIjTLPIocR1ttvzhxQZcd4VnI7GUKqradLn5X-Hdny6aEDffech-0GaOScwiaXEjB8rp8/s640/sql1.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
But Cloudera is arguably the biggest name pushing SQL on Hadoop, and CEO Mike Olson thinks Impala stands out for several reasons — not the least of which is that it exists as a product. “Nobody else is shipping production-grade SQL query support on Hadoop,” he told me during a recent call. “At least not in open source.” He seems content to let the startups do their things, instead focusing his attention on Cloudera’s big three Hadoop-distribution competitors in Pivotal, MapR and Hortonworks. Greenplum and Pivotal SVP Scott Yara &lt;a href=&quot;http://gigaom.com/2013/02/25/emc-to-hadoop-competition-see-ya-wouldnt-wanna-be-ya/&quot;&gt;was full of confidence — and R&amp;amp;D budget&lt;/a&gt;– when the company announced the Pivotal HD distribution and HAWQ technology in February, but Olson claims the approach requires a siloed DBMS within HDFS and is a “rearguard defensive strategy” to protect the company’s sunk costs in its database technology.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjat0v_vq7yKAMrXe4BhYUoXOXyw9IiQwDCKow-G8xNfJzzl4qa4py6LgtU5bEcFbt5OLXTmoLn0WHCx8GYt9QUp1mE1UnKSQzq-t7Lj5R6DRv6mScr-RwXse0SxD8DF4gwMq3vHmqqa5U/s1600/sql2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;336&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjat0v_vq7yKAMrXe4BhYUoXOXyw9IiQwDCKow-G8xNfJzzl4qa4py6LgtU5bEcFbt5OLXTmoLn0WHCx8GYt9QUp1mE1UnKSQzq-t7Lj5R6DRv6mScr-RwXse0SxD8DF4gwMq3vHmqqa5U/s640/sql2.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
As for Hortonworks, Olson questions the wisdom of its Stinger initiative to boost Hive’s speed, noting that “Hive never got good while it was running standalone on MapReduce.” Hortonworks also &lt;a href=&quot;http://gigaom.com/2013/04/15/teradata-to-connect-hadoop-and-data-warehouses-roll-out-new-appliance/&quot;&gt;partners with vendors such as Teradata&lt;/a&gt; to let their platforms access Hadoop data in its native format, but those approaches still require sending data over the network. “It’s not the way you would build it if you woke up in the 2000s and were building this anew,” Olson said.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2Wyz871K2W8X6CZUJOdHyRdk64vQmTBvKK9fzgsAD_GFkE4uW6hikVQEcoLx6WYc2FG6HCw-wtmRztOAG1W54nFCXMyXWGum8dHTc_f5bWyuXPbHxbRi3ymgPZ468MWEE63thyphenhyphenZ61JEo/s1600/sql3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;512&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2Wyz871K2W8X6CZUJOdHyRdk64vQmTBvKK9fzgsAD_GFkE4uW6hikVQEcoLx6WYc2FG6HCw-wtmRztOAG1W54nFCXMyXWGum8dHTc_f5bWyuXPbHxbRi3ymgPZ468MWEE63thyphenhyphenZ61JEo/s640/sql3.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Olson acknowledged that the MapR-led Apache Drill project is cut from the same cloth as Impala (that is, being a Google Dremel clone designed specifically for Hadoop), but “the difference is we’re shipping code.” Being generally available and ready for production workloads means Cloudera can lock down users and market share before many even have a chance to experiment with Drill. He all but dismissed questions over the readiness of Impala, spurred by rumblings in the Hadoop space that Cloudera rushed it into public beta in order to get on the scoreboard against more fully baked offerings.&lt;br /&gt;
“I don’t feel we’re under the gun competitively to pull it out of beta because no one else has product in the market,” Olson said. “I have no problems … calling this GA quality.” He did, however, acknowledge that Impala is shipping with a “minium viable feature set” that the company has plans to build on in the near future. Impala Senior Product Manager Justin Erickson noted a few issues of concern, including around the number of concurrent users Impala can support, but said they have been addressed during the beta period.&lt;br /&gt;
&lt;h2 id=&quot;one-piece-of-a-larger-platform&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;One piece of a larger platform&lt;/span&gt;&lt;/h2&gt;
Really, though, the whole point of Impala and its competitors is to turn Hadoop from a tool for batch analytics and mass storage &lt;a href=&quot;http://gigaom.com/2013/03/07/5-reasons-why-the-future-of-hadoop-is-real-time-relatively-speaking/&quot;&gt;into a platform that can handle nearly all of companies’ data-processing needs&lt;/a&gt;. In that regard, it appears we’re just getting started. Cloudera, MapR, Pivotal Greenplum and Hortonworks are already pushing their own products and projects, and Olson said “it’s absolutely our intent” to enhance Cloudera’s platform with even more open-source products — perhaps even more database technologies &lt;a href=&quot;http://gigaom.com/2013/04/22/how-hbase-converted-myspaces-mysql-champion-and-is-driving-hadoop-mainstream/&quot;&gt;a la HBase&lt;/a&gt; — that will let users do more stuff with more types of data. Over time, this strategy could result in Hadoop displacing the current breed of databases and data warehouses and becoming the single data store atop of which users run whatever applications they so desire. For now, though, especially when it comes to Impala and the data warehouse incumbents, Olson is taking a measured approach. “The likelihood that we’re going to knock them off in the near term,” he said, “… it would be a tough fight to win.”&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/2723086050344838736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/clouderas-impala-engine-for-interactive.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2723086050344838736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2723086050344838736'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/clouderas-impala-engine-for-interactive.html' title='Cloudera’s CEO sizes up the SQL-on-Hadoop market'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgry7s4x5buKp2OhbpT1xb7HvqNz_-0H8JOOcXBklyFcD26GGek7H410w9tNT6iIqHCxlGH0UEOadRNGLtFI2p9Vdmo7Hu9AfFQJ28kYLoUATR6Rti-M7WlFevdcsiyidv3YZcNvelvWCE/s72-c/sql.JPG" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-4470807890855585902</id><published>2013-04-30T18:06:00.000+05:30</published><updated>2013-04-30T18:06:04.445+05:30</updated><title type='text'>TSQL command to check if SQL Agent services is started or down.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;SET&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;NOCOUNT&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;varchar&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;100&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT2 &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;integer&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;BEGIN&lt;br /&gt;

&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;SELECT&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT2 &lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;count&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;FROM&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;master&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;sys&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;sysprocesses&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: green; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;WHERE&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;program_name&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;N&#39;%SQLAgent%&#39;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;IF&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT2 &lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; 0&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;BEGIN&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;SET&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT &lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;convert&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;varchar&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;100&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;),&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&#39;FAILURE: SQL Server Agent service is NOT started!&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;END&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;ELSE&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;BEGIN&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;SET&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT &lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: magenta; font-size: x-small;&quot;&gt;convert&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;varchar&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;100&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;),&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;&#39;SQL Server Agent service is started.&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: grey; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;END&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;PRINT&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; @ISCOUNT&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;END&lt;br /&gt;

&lt;br /&gt;
GO&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/4470807890855585902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/tsql-command-to-check-if-sql-agent.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4470807890855585902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/4470807890855585902'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/tsql-command-to-check-if-sql-agent.html' title='TSQL command to check if SQL Agent services is started or down.'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-3414819920637319467</id><published>2013-04-29T21:32:00.002+05:30</published><updated>2013-04-29T21:32:36.441+05:30</updated><title type='text'>Oracle Unveils SPARC Servers with the World’s Fastest Microprocessor</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h1&gt;
&lt;span style=&quot;color: red;&quot;&gt;New SPARC Servers Redefine the Economics of Enterprise Computing: Deliver Extreme Performance and Value for Database and Enterprise Applications, Trump the Competition on Multiple Business-Critical Workloads&lt;/span&gt; &lt;/h1&gt;
&lt;div class=&quot;pressDate&quot;&gt;
Redwood Shores, Calif. – March 26, 2013&lt;/div&gt;
&lt;h3&gt;
News Facts&lt;/h3&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle today announced a complete refresh of their midrange and high-end SPARC server lines with new &lt;!-- TRANSIT - HYPERLINK --&gt;&lt;!-- .http://www.oracle.com/sparc. --&gt;&lt;a href=&quot;http://www.oracle.com/sparc&quot; target=&quot;_top&quot;&gt;SPARC T5 and M5 servers&lt;/a&gt; running &lt;!-- TRANSIT - HYPERLINK --&gt;&lt;!-- .http://www.oracle.com/solaris. --&gt;&lt;a href=&quot;http://www.oracle.com/solaris&quot; target=&quot;_top&quot;&gt;Oracle Solaris&lt;/a&gt;. &lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle’s new SPARC T5 midrange servers are based on the SPARC T5, the world’s fastest microprocessor.&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Businesses today need the computing power to exploit Big Data to maximum advantage, to use analytics to discover growth and opportunities, and turn social streams into market intelligence. Traditional systems simply don’t have the horsepower to handle those demanding tasks.&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle’s new SPARC T5 servers have set &lt;!-- TRANSIT - HYPERLINK --&gt;&lt;!-- .http://www.oracle.com/benchmarks. --&gt;&lt;a href=&quot;http://www.oracle.com/benchmarks&quot; target=&quot;_top&quot;&gt;17 world records&lt;/a&gt;(1) and are the world’s best platforms for enterprise computing at any scale, delivering the best value for database and enterprise applications.&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle’s SPARC T5-8 is the fastest single server for Oracle Database(2).&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle’s SPARC T5-8 is also the fastest single server for Oracle Middleware with a 12x cost performance advantage over the IBM Power 780(3).&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle’s SPARC T5-8 server has a 2.5x price performance advantage over the IBM P780 3-node cluster, when including hardware and software costs(4).&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
  Oracle&#39;s SPARC T5-8 server has a 7x price advantage over a similar IBM Power 780 configuration for database on a server-to-server basis(5).&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;pressBullet&quot;&gt;
&lt;a href=&quot;http://www.oracle.com/us/corporate/press/1923343&quot;&gt;http://www.oracle.com/us/corporate/press/1923343&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/3414819920637319467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/oracle-unveils-sparc-servers-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/3414819920637319467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/3414819920637319467'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/oracle-unveils-sparc-servers-with.html' title='Oracle Unveils SPARC Servers with the World’s Fastest Microprocessor'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3510902444529458646.post-2870356811577815211</id><published>2013-04-19T21:04:00.000+05:30</published><updated>2013-04-19T21:04:35.309+05:30</updated><title type='text'>Get Top Queries Tiring SQL Server CPUs</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;use tempdb&lt;br /&gt;
go&lt;br /&gt;
IF object_id(&#39;tempdb..##FindTopCPUQueries_set1&#39;) is not null DROP TABLE [dbo].[##FindTopCPUQueries_set1]&lt;br /&gt;GO&lt;br /&gt;declare @ServerTime datetime = getdate()&lt;br /&gt;, @ConvertMiliSeconds bigint = 1000&lt;br /&gt;, @FilterMoreThanMiliSeconds bigint = 1&lt;br /&gt;, @FilterHours bigint = 2&lt;br /&gt;, @execution_count bigint = 2&lt;br /&gt;, @debugFlg bit = 0&lt;br /&gt;if @debugFlg=1 select @ServerTime as ServerTime, @ConvertMiliSeconds as ConvertMiliSeconds&lt;br /&gt;, @FilterMoreThanMiliSeconds as FilterMoreThanMiliSeconds, @FilterHours as FilterHours &lt;br /&gt;, @execution_count as execution_count&lt;br /&gt;select TOP 300&lt;br /&gt;@@servername as servername,@ServerTime as runtime&lt;br /&gt;,isnull(db_name(QueryText.dbid),&#39;PreparedSQL&#39;) as DBName &lt;br /&gt;&amp;nbsp;,SUBSTRING(QueryText.text, (QueryStats.statement_start_offset/2)+1, &lt;br /&gt;(isnull((&lt;br /&gt;CASE QueryStats.statement_end_offset&lt;br /&gt;&amp;nbsp;WHEN -1 THEN DATALENGTH(QueryText.text)&lt;br /&gt;
&amp;nbsp;WHEN 0 THEN DATALENGTH(QueryText.text)&lt;br /&gt;&amp;nbsp;ELSE QueryStats.statement_end_offset&lt;br /&gt;&amp;nbsp;END - QueryStats.statement_start_offset),0)/2) &lt;br /&gt;&amp;nbsp;+ 1) AS QueryExecuted&lt;br /&gt;,total_worker_time AS total_worker_time&lt;br /&gt;,QueryStats.execution_count as execution_count&lt;br /&gt;,statement_start_offset,statement_end_offset&lt;br /&gt;,(case when QueryText.dbid is null then OBJECT_NAME(QueryText.objectid) else OBJECT_NAME(QueryText.objectid, QueryText.dbid) end) as ObjectName&lt;br /&gt;,query_hash&lt;br /&gt;,plan_handle&lt;br /&gt;,sql_handle&lt;br /&gt;into ##FindTopCPUQueries_set1&lt;br /&gt;from sys.dm_exec_query_stats as QueryStats&lt;br /&gt;cross apply sys.dm_exec_sql_text(QueryStats.sql_handle) as QueryText&lt;br /&gt;where QueryStats.query_hash IN &lt;br /&gt;(&lt;br /&gt;select QueryStatsBaseTable.query_hash &lt;br /&gt;from sys.dm_exec_query_stats QueryStatsBaseTable&lt;br /&gt;where last_execution_time &amp;gt; DATEADD(hh,-@FilterHours,GETDATE())&lt;br /&gt;group by query_hash&lt;br /&gt;having (sum(total_worker_time)/sum(execution_count))&amp;gt;@ConvertMiliSeconds and sum(execution_count)&amp;gt;@execution_count&lt;br /&gt;)&lt;br /&gt;ORDER BY total_worker_time/execution_count DESC;&lt;br /&gt;if @debugFlg=1 select * from ##FindTopCPUQueries_set1 order by QueryExecuted&lt;br /&gt;IF object_id(&#39;tempdb..##FindTopCPUQueries_set2&#39;) is not null DROP TABLE [dbo].[##FindTopCPUQueries_set2]&lt;br /&gt;select &lt;br /&gt;servername,runtime,max(DBName) as DBName,max(QueryExecuted) as QueryExecuted,(sum(total_worker_time)/sum(execution_count))/@ConvertMiliSeconds as AvgCPUTime&lt;br /&gt;,sum(execution_count) as execution_count,query_hash, max(ObjectName) as ObjectName&lt;br /&gt;into ##FindTopCPUQueries_set2&lt;br /&gt;from ##FindTopCPUQueries_set1&lt;br /&gt;group by query_hash,servername,runtime&lt;br /&gt;order by AvgCPUTime desc&lt;br /&gt;select * from ##FindTopCPUQueries_set2&lt;br /&gt;--where QueryExecuted like &#39;select TOP 300%&#39;&lt;br /&gt;order by AvgCPUTime desc&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://sqlcodebank.blogspot.com/feeds/2870356811577815211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/get-top-queries-tiring-sql-server-cpus.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2870356811577815211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3510902444529458646/posts/default/2870356811577815211'/><link rel='alternate' type='text/html' href='http://sqlcodebank.blogspot.com/2013/04/get-top-queries-tiring-sql-server-cpus.html' title='Get Top Queries Tiring SQL Server CPUs'/><author><name>SQL CODE BANK</name><uri>http://www.blogger.com/profile/03691418362616379580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7zFSKTCGdKXXKdDKK_j0ZW56EgucQoprI8rRZoN-ZxdpI0h-9N6hxYAinMONtPQh-gIT7pmtZfzh6j5qGQ_9QZrFhYAsOzb8tw9d-RTkvC8_JZDPiPvJd5QWd5fli4ts/s79/dev1.jpg'/></author><thr:total>0</thr:total></entry></feed>