Browse by Tags

CSS SQL Server Engineers

This is the official team Web Log for Microsoft Customer Service and Support (CSS) SQL Support. Posts are provided by the CSS SQL Escalation Services
  • Blog Post: Understanding SQL Server’s Spatial Precision Filtering

    A spatial index is not precise on its own. The spatial index is grid design requiring a precision filter as part of the query plan. In this blog I will provide a high level (10,000 foot) overview of the design. The spatial index overlays a series of grids. If the shape has any area (representation) that...
  • Blog Post: How It Works: MAX DOP Level and Parallel Index Builds

    I have been working on an issue where rebuilding an index leads to additional fragmentation.   Using XEvents I debugged the page allocations and writes and was able to narrow in on the behavior. There are lots of factors to take into account when rebuilding the index.    I was able...
  • Blog Post: Running SQL Server on Machines with More Than 8 CPUs per NUMA Node May Need Trace Flag 8048

    Applies To:   SQL 2008, 2008 R2, 2012 and 2014 releases Note :  The number of CPUs is the logical count, not sockets.   If more than 8 logical CPUs are presented this post may apply. The SQL Server developer can elect to partition memory allocations at different levels based on the...
  • Blog Post: SQL Server and SSDs – RDORR’s Learning Notes - Part 1

    I am very hesitant to post anything that I don’t have the full details on.  However, with SSD deployments moving so rapidly I thought it might be helpful to share some of my learning's to date. I make no claims of being an expert in this area.   However, I have been doing research that...
  • Blog Post: Do I really need to use DTC Transactions?

    It is sometimes common practice to enable Distributed Transaction (DTC) behavior but it can be unnecessary, and adds unwanted overhead.   DTC has the ability to determine single phase vs two phase commit requirements.  A DTC transaction involves resource managers (RMs) of which SQL Server...
  • Blog Post: A faster CHECKDB – Part IV (SQL CLR UDTs)

    I have been working on the various aspects of DBCC performance and SQL CLR based User Defined Data Types .     I encountered a few issues that I have outlined below.   1.       Memory Grant Bug There is a bug, prior to SQL Server 2014, causing the memory grant...
  • Blog Post: How It Works: sp_server_diagnostics – spinlock backoffs

    There are numerous articles outlining how spinlocks work so I won’t cover the details in this post.   Instead, I want to focus on the spinlockbackoffs value recorded in the sp_server_diagnostics output. Component = System <system spinlockBackoffs ="0" sick SpinlockType="none"...
  • Blog Post: A faster CHECKDB – Part III

    Bob Ward introduced Part 1 and Part 2 of ‘A faster CHECKDB’ as highlighted in the following links. Part 1: http://blogs.msdn.com/b/psssql/archive/2011/12/20/a-faster-checkdb-part-i.aspx   Part 2: http://blogs.msdn.com/b/psssql/archive/2012/02/23/a-faster-checkdb-part-ii.aspx   Recently, ...
  • Blog Post: SQL Server MAX DOP Beyond 64 – Is That Possible?

    I recently posted a blog outlining how the partitions of a table can be used in the calculation for the achievable max degree of parallelism (MAX DOP). http://blogs.msdn.com/b/psssql/archive/2014/09/04/a-partitioned-table-may-limit-the-runtime-max-dop-of-create-alter-index.aspx   Discussing this...
  • Blog Post: A Partitioned Table May Limit the Runtime MAX DOP of Create/Alter Index

    I was working with a 1.3 trillion row table in the Microsoft lab when I learned more about the ins and outs of this behavior.  This issue is alluded to in SQL Server Books Online but allow me to expand on the behavior a bit more. ( http://msdn.microsoft.com/en-us/library/ms190787.aspx ) The lab...
  • Blog Post: How It Works: XEvent Output and Visualization

    Each and every day I use XEvent more and more as I uncover the powerful feature set.   I am finding it helpful to understand some of the input and output capabilities in order to leverage the power of XEvent. Server File Output When setting up an session to write to a file use per CPU partitioning...
  • Blog Post: Capping CPU using Resource Governor – The Concurrency Mathematics

    Here is what you need to know: A = πr 2 Okay, not really as that is the formula for the area of a circle but it does set the stage for this discussion.   I have been working with the CAP_CPU_PERCENT (RESOURCE POOL) setting as it relates to concurrency.   This turned into a mathematical...
  • Blog Post: How It Works: Behavior of a 1 Trillion Row Index Build (Gather Streams from SORT)

    I ran into this behavior working on a 1 trillion row, spatial index build but the behavior can apply to any Gather Streams operator, retaining the sort order as rows pass though it.   I was just surprised a bit by the behavior until I dug deeper to understand. The index was taking just short...
  • Blog Post: Version 9.04.0013 of the RML Utilities for x86 and x64 has been released to the download center

            X64 : http://download.microsoft.com/download/0/a/4/0a41538e-2d57-40ff-ae85-ec4459f7cdaa/RMLSetup_AMD64.msi X86 : http://download.microsoft.com/download/4/6/a/46a3217e-f523-4cc6-96e9-df73dd0fdd04/RMLSetup_X86.msi   This build...
  • Blog Post: SQL Server 2014: TEMPDB Hidden Performance Gem

    I ran across a change for TEMPDB BULK OPERATIONS (Select into, table valued parameters (TVP), create index with SORT IN TEMPDB, …) that you will benefit from. For example, I have a Create Index … WITH SORT IN TEMPDB that takes ~1 minute in SQL Server 2012.   On the same machine using a SQL...
  • Blog Post: SQL Server 2014’s new cardinality estimator (Part 1)

    One of the performance improvement in SQL Server 2014 is the redesign of cardinality estimation. The component which does cardinality estimation (CE) is called cardinality estimator. It is the essential component of SQL query processor for query plan generation. Cardinality estimates are predictions...
Page 1 of 1 (16 items)