Skip to content

Commit 68467b1

Browse files
authored
Merge pull request #19414 from pmasl/patch-953
Update dbcc-traceon-trace-flags-transact-sql.md
2 parents 17b98aa + 8b07b59 commit 68467b1

3 files changed

Lines changed: 6 additions & 3 deletions

File tree

docs/relational-databases/indexes/columnstore-indexes-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ A rowgroup from where all data has been deleted transitions from COMPRESSED into
5858
> After merging smaller rowgroups, the index quality should be improved.
5959
6060
> [!NOTE]
61-
> Starting with [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)], the tuple-mover is helped by a background merge task that automatically compresses smaller OPEN delta rowgroups that have existed for some time as determined by an internal threshold, or merges COMPRESSED rowgroups from where a large number of rows has been deleted. This improves the columnstore index quality over time.
61+
> <a name="bckmergetsk"></a> Starting with [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)], [!INCLUDE[ssSDSfull](../../includes/sssdsfull-md.md)], and [!INCLUDE[ssSDSMIfull](../../includes/sssdsmifull-md.md)], the tuple-mover is helped by a background merge task that automatically compresses smaller OPEN delta rowgroups that have existed for some time as determined by an internal threshold, or merges COMPRESSED rowgroups from where a large number of rows has been deleted. This improves the columnstore index quality over time.
6262
6363
#### Column segment
6464
A column segment is a column of data from within the rowgroup.

docs/relational-databases/indexes/reorganize-and-rebuild-indexes.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,9 @@ Reorganizing an index is less resource intensive than rebuilding an index. For t
112112
- For [rowstore indexes](clustered-and-nonclustered-indexes-described.md), the [!INCLUDE[ssde_md](../../includes/ssde_md.md)] defragments only the leaf level of clustered and nonclustered indexes on tables and views by physically reordering the leaf-level pages to match the logical order of the leaf nodes (left to right). Reorganizing also compacts index pages to make page density equal to the [fill factor](../../relational-databases/indexes/specify-fill-factor-for-an-index.md) of the index. To view the fill factor setting, use [sys.indexes](../../relational-databases/system-catalog-views/sys-indexes-transact-sql.md). For syntax examples, see [Examples - Rowstore reorganize](../../t-sql/statements/alter-index-transact-sql.md#examples-rowstore-indexes).
113113
- When using [columnstore indexes](columnstore-indexes-overview.md), the delta store may end up with multiple small row groups after inserting, updating, and deleting data over time. Reorganizing a columnstore index forces delta store row groups into compressed row groups in columnstore, and combines smaller compressed row groups into larger row groups. The reorganize operation also physically removes rows that have been marked as deleted in the columnstore. Reorganizing a columnstore index may require additional CPU resources to compress data, which may slow the overall system performance while the operation is running. However, once data is compressed, query performance improves. For syntax examples, see [Examples - Columnstore reorganize](../../t-sql/statements/alter-index-transact-sql.md#examples-columnstore-indexes).
114114

115+
> [!NOTE]
116+
> <a name="bckmergetsk"></a> Starting with [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)], [!INCLUDE[ssSDSfull](../../includes/sssdsfull-md.md)], and [!INCLUDE[ssSDSMIfull](../../includes/sssdsmifull-md.md)], the tuple-mover is helped by a background merge task that automatically compresses smaller OPEN delta rowgroups that have existed for some time as determined by an internal threshold, or merges COMPRESSED rowgroups from where a large number of rows has been deleted. This improves the columnstore index quality over time. For most cases this dismisses the need for issuing `ALTER INDEX ... REORGANIZE` commands.
117+
115118
> [!TIP]
116119
> If you cancel a reorganize operation, or if it is otherwise interrupted, the progress it made to that point is persisted in the database. To reorganize large indexes, the operation can be started and stopped multiple times until it completes.
117120

docs/t-sql/database-console-commands/dbcc-traceon-trace-flags-transact-sql.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,8 +199,8 @@ The following table lists and describes the trace flags that are available in [!
199199
|**11047**|Applies the default timeout set by `query wait (s)` or the Resource Governor `REQUEST_MEMORY_GRANT_TIMEOUT_SEC` configuration to columnstore index build operations. For more information, see this [Microsoft Support article](https://support.microsoft.com/kb/4480641).<br /><br />**Note:** This trace flag applies to [!INCLUDE[sssql16-md](../../includes/sssql16-md.md)] SP2 CU5, [!INCLUDE[ssSQL17](../../includes/sssql17-md.md)] CU14, and higher builds.<br /><br />**Scope**: global only|
200200
|**11064**|Improves the scalability of data loading operations into columnstore indexes, by optimizing memory distribution between the `SELECT` and `INSERT` statements. For more information on loading data into a columnstore index, see [Columnstore indexes - Data loading guidance](../../relational-databases/indexes/columnstore-indexes-data-loading-guidance.md).<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] and higher builds.<br /><br />**Scope**: global only|
201201
|**11068**|Uses the server, database, or resource pool configured max degree of parallelism (MAXDOP) value for columnstore index insert operations. For more information on overriding degrees of parallelism, see the [Query Processing Architecture Guide](../../relational-databases/query-processing-architecture-guide.md#overriding-degrees-of-parallelism).<br /><br />**Important:** This trace flag is only effective if trace flag 11064 is also enabled.<br /><br />**Important:** Use this trace flag when faster data loads are preferred over maintaining [columnstore segment](../../relational-databases/indexes/columnstore-indexes-overview.md#column-segment) quality. For example, using this trace flag when loading 1,048,577 rows into a columnstore may result in more than one compressed rowgroup, if the insert operation is executing in parallel mode. Without this trace flag, the insert operation would result in one compressed rowgroup.<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] and higher builds.<br /><br />**Scope**: global only|
202-
|**11631**| An 'ALTER INDEX ... REORGANIZE' will clean up the deleted rows in a columnstore index rowgroup only when a certain threshold of rows has been deleted from that rowgroup. The default threshold is 10% of maximum row limit (1 million), or of 100,000 rows. This trace flag changes the threshold to 10% of the total current rows in a columnstore rowgroup. For example, if a rowgroup contains 20,000 rows, the threshold will be 2,000 deleted rows before REORGANIZE considers this rowgroup for cleanup. For more information see [Microsoft Support article](https://support.microsoft.com/help/5000895)<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] CU9 and higher builds.<br /><br />**Scope**: global only|
203-
|**11634**| An 'ALTER INDEX ... REORGANIZE' will clean up the deleted rows in a columnstore index rowgroup only when a certain threshold of rows has been deleted from that rowgroup. The default threshold is 10% of maximum row limit (1 million), or 100,000 rows. This trace flag changes the threshold to 1% of the rows in a columnstore rowgroup. If enabled together with trace flag 11631 then it will be 1% of the current number of rows in a rowgroup, instead of 1% of 1 million rows. For more information see [Microsoft Support article](https://support.microsoft.com/help/5000895)<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] CU9 and higher builds.<br /><br />**Scope**: global only|
202+
|**11631**| An `ALTER INDEX ... REORGANIZE` and the [background merge task](../../relational-databases/indexes/columnstore-indexes-overview.md#bckmergetsk) will clean up the deleted rows in a columnstore index rowgroup only when a certain threshold of rows has been deleted from that rowgroup. The default threshold is 10% of the maximum row limit (1 million), or of 100,000 rows.<br /><br />This trace flag changes the threshold to 10% of the total current rows in a columnstore rowgroup. For example, if a rowgroup contains 20,000 rows, the threshold will be 2,000 deleted rows before this rowgroup is considered for cleanup. For more information see [Microsoft Support article](https://support.microsoft.com/help/5000895)<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] CU9 and higher builds.<br /><br />**Scope**: global only|
203+
|**11634**| An `ALTER INDEX ... REORGANIZE` and the [background merge task](../../relational-databases/indexes/columnstore-indexes-overview.md#bckmergetsk) will clean up the deleted rows in a columnstore index rowgroup only when a certain threshold of rows has been deleted from that rowgroup. The default threshold is 10% of maximum row limit (1 million), or 100,000 rows.<br /><br />This trace flag changes the threshold to 1% of the rows in a columnstore rowgroup. If enabled together with trace flag 11631 then it will be 1% of the current number of rows in a rowgroup, instead of 1% of 1 million rows. For more information see [Microsoft Support article](https://support.microsoft.com/help/5000895)<br /><br />**Note:** This trace flag applies to [!INCLUDE[sql-server-2019](../../includes/sssql19-md.md)] CU9 and higher builds.<br /><br />**Scope**: global only|
204204
|**13116**|Disables the fix for bug [13685819](https://support.microsoft.com/en-us/topic/kb5000645-cumulative-update-16-for-sql-server-2016-sp2-a3997fa9-ec49-4df0-bcc3-12dd58b78265#bkmk_13685819). Use this trace flag if after you apply [!INCLUDE[sssql16-md](../../includes/sssql16-md.md)] SP2 CU16, you encounter an issue in which DML (insert/update/delete) queries that use parallel plans cannot complete any execution and encounter HP_SPOOL_BARRIER waits. <br /><br />**Note:** This trace flag applies to [!INCLUDE[sssql16-md](../../includes/sssql16-md.md)] SP2 CU16.<br /><br />**Scope**: global only|
205205

206206
## Examples

0 commit comments

Comments
 (0)