|
Este artigo foi traduzido manualmente. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original.
|
Tradução
Original
|
CREATE COLUMNSTORE INDEX (Transact-SQL)
Observação
|
|---|
|
|
CREATE [ NONCLUSTERED ] COLUMNSTORE INDEX index_name
ON <object> ( column [ ,...n ] )
[ WITH ( <column_index_option> [ ,...n ] ) ]
[ ON {
{ partition_scheme_name ( column_name ) }
| filegroup_name
| "default"
}
]
[ ; ]
<object> ::=
{
[database_name. [schema_name ] . | schema_name . ]
table_name
{
<column_index_option> ::=
{
DROP_EXISTING = { ON | OFF }
| MAXDOP = max_degree_of_parallelism
}
-
char e varchar -
nchar e nvarchar (exceto varchar(max) e nvarchar(max)) -
decimal (e numeric) (exceto com precisão maior que 18 dígitos.) -
int , bigint, smallint e tinyint -
float (e real) -
bit
-
money e smallmoney -
Todos os tipos de dados de data e hora (exceto datetimeoffset com escala maior que 2)
-
binary e varbinary -
ntext , text e image -
varchar(max) e nvarchar(max) -
uniqueidentifier
-
rowversion (e timestamp) -
sql_variant
-
decimal (e numeric) com precisão maior que 18 dígitos -
datetimeoffset com escala maior que 2 -
Tipos CLR (hierarchyid e tipos espaciais) -
xml
Restrições básicas
-
Não pode ter mais de 1024 colunas. -
Não pode ser clusterizado. Apenas índices columnstore não clusterizados estão disponíveis. -
Não pode ser um índice exclusivo. -
Não pode ser criado em uma exibição ou exibição indexada. -
Não pode incluir uma coluna esparsa. -
Não pode atuar como uma chave primária ou estrangeira. -
Não pode ser alterado por meio da instrução ALTER INDEX. Em vez disso, remova e recrie o índice columnstore. (Você pode usar ALTER INDEX para desabilitar e recriar um índice columnstore.) -
Não pode ser criado por meio da palavra-chave INCLUDE. -
Não pode incluir as palavras-chave ASC ou DESC para classificar o índice. Os índices columnstore são ordenados de acordo com os algoritmos de compactação. A classificação eliminará muitos dos benefícios de desempenho.
Índices columnstore não podem ser combinados com os recursos a seguir:
-
Compactação de página e de linha, e formato de armazenamento vardecimal (um índice columnstore já foi compactado em um formato diferente). -
Replicação -
Controle de alterações -
Change Data Capture -
Fluxo de arquivos
A.Criando um índice não clusterizado simples
CREATE TABLE SimpleTable (ProductKey [int] NOT NULL, OrderDateKey [int] NOT NULL, DueDateKey [int] NOT NULL, ShipDateKey [int] NOT NULL); GO CREATE CLUSTERED INDEX cl_simple ON SimpleTable (ProductKey); GO CREATE NONCLUSTERED COLUMNSTORE INDEX csindx_simple ON SimpleTable (OrderDateKey, DueDateKey, ShipDateKey); GO
B.Criando um índice não clusterizado simples com o uso de todas as opções
CREATE NONCLUSTERED COLUMNSTORE INDEX csindx_simple ON SimpleTable (OrderDateKey, DueDateKey, ShipDateKey) WITH (DROP_EXISTING = ON, MAXDOP = 2) ON "default" GO
Observação