Treinamento SQL Server

Módulo 21 — Columnstore Indexes & Batch Mode (DW/HTAP)

Armazenamento em colunas, compressão, batch mode e padrões para workloads analíticos no SQL Server.

T-SQL Nível Avançado Hands-on Atualizado: 28 ago 2025

1) Conceitos & Arquitetura

Columnstore armazena por coluna em segmentos comprimidos. Batch mode processa vetorizado e acelera agregações.

2) Criando & Mantendo Columnstore

CREATE CLUSTERED COLUMNSTORE INDEX CCI_FV ON dbo.FatoVendas;
CREATE NONCLUSTERED COLUMNSTORE INDEX NCCI_Pedidos ON dbo.Pedidos(ValorTotal, DataPedido, IdCliente);

3) Batch Mode & Operadores

SELECT UF, SUM(Valor) FROM dbo.FatoVendas GROUP BY UF;

4) Dicionário/Compressão & Segmentos

5) Delta Stores & Tuple Mover

ALTER INDEX CCI_FV ON dbo.FatoVendas REORGANIZE;

6) Atualizações/DELETE & Reorganize

ALTER INDEX CCI_FV ON dbo.FatoVendas REBUILD;

7) Columnstore + Rowstore (HTAP)

CREATE NONCLUSTERED COLUMNSTORE INDEX NCCI_Pedidos ON dbo.Pedidos (DataPedido, ValorTotal, IdCliente);

8) Laboratório

CREATE TABLE dbo.FatoVendas(Data date, ProdutoId int, UF char(2), Qtde int, Valor money);
CREATE CLUSTERED COLUMNSTORE INDEX CCI_FV ON dbo.FatoVendas;

9) Exercícios

  1. Criar NCCI para relatório real.

10) Gabarito

ALTER INDEX CCI_FV ON dbo.FatoVendas REORGANIZE;

11) Erros & Boas Práticas

12) Próximos Passos