Usuário com melhor resposta
Particionamento de tabela

Pergunta
-
Olá a todos
Uma tabela foi particionada, se estiver certo, os passos para particionamento seriam os seguintes ?:
1- CRIAR FILE GROUP
2- CRIAR OS ARQUIVOS DAS PARTIÇÕES
3- CRIAR PARTITION FUNCTION E SCHEMA
4- DROPAR O INDIÇE E RECRIAR DEIXANDO ELE DENTRO DO PARTICIONAMENTO
A duvida é, na imagem seguinte o índice foi recriado, porem o particionamento foi feito erradamente ? sendo que o índice não esta dentro do schema de partição?
O Particionamento foi feito por data, porem o campo que armazena data não faz parte do índice, e ele ainda é um indiçe non clustered.
Mais uma duvida, quando é recriado o índice, o banco de dados primário o mdf, ele aumenta bastante o tamanho ?
Espero ter conseguido explicar o cenário.
Sei que existe uma opção de criar a tabela e fazer uma carga de dados para a tabela igual a original, como seria feito isso, e se é melhor do que dropar o índice e recria-lo
- Editado Dyego Rodrigues terça-feira, 19 de janeiro de 2021 01:09
Respostas
-
Dyego,
Se eu entendi a sua dúvida: "A duvida é, na imagem que coloquei o índice criado não faz parte de um schema de partição correto ? ele faz parte do arquivo primário." --- Sim neste seu caso sim.
Esta outra dúvida: "poderia ir na opção de armazenamento da tabela >criar partição> estimar espaço e fazer o processo? isso pelo SSMS." Eu particularmente nunca criei pelo SSMS através da interface gráfica eu sempre fiz por linha de comando.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
- Marcado como Resposta Dyego Rodrigues sexta-feira, 22 de janeiro de 2021 20:05
Todas as Respostas
-
Dyego,
Vamos por partes, em relação a sequência de passos para se criar um particionamento de tabelas, praticamente é este, no caso eu recomendo que você crie o índice antes da população dos dados.
Sobre a sua dúvida:
O Particionamento foi feito por data, porem o campo que armazena data não faz parte do índice, e ele ainda é um indiçe non clustered.
--- O particionamento é realizar através da função de particionamento do dado, independente da coluna ser ou não ser um índice.
Mais uma duvida, quando é recriado o índice, o banco de dados primário o mdf, ele aumenta bastante o tamanho ?
--- Dizer que ele vai aumentar bastante é relativo, mas ele vai crescer sim, saiba que o índice é uma estrutura fisicamente armazenada, contendo o tamanho das colunas de acordo com os seus respectivos tipos de dados.
Vou compartilhar com você uma lista de posts publicados no meu blog, que destacam especificamente o uso de Partition Function e tabelas particionadas:
Gostaria de destacar também um recurso interessante adicionado a partir do SQL Server 2014 SP2 conhecido como Estatísticas Incrementais que possuem um comportamento que poderá lhe ajudar ainda mais no uso das tabelas particionadas:
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
- Editado Junior Galvão - MVPMVP, Moderator terça-feira, 19 de janeiro de 2021 12:06
-
Junior
Quando você fala nessa parte
Vamos por partes, em relação a sequência de passos para se criar um particionamento de tabelas, praticamente é este, no caso eu recomendo que você crie o índice antes da população dos dados.
A duvida é, na imagem que coloquei o índice criado não faz parte de um schema de partição correto ? ele faz parte do arquivo primário.
E após os passos de criar o schema , particição criar o índice (dentro do schema de partição), o outro passo poderia ir na opção de armazenamento da tabela >criar partição> estimar espaço e fazer o processo? isso pelo SSMS.
-
Dyego,
Se eu entendi a sua dúvida: "A duvida é, na imagem que coloquei o índice criado não faz parte de um schema de partição correto ? ele faz parte do arquivo primário." --- Sim neste seu caso sim.
Esta outra dúvida: "poderia ir na opção de armazenamento da tabela >criar partição> estimar espaço e fazer o processo? isso pelo SSMS." Eu particularmente nunca criei pelo SSMS através da interface gráfica eu sempre fiz por linha de comando.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
- Marcado como Resposta Dyego Rodrigues sexta-feira, 22 de janeiro de 2021 20:05
-
-
Obrigado por tirar as duvidas!
Dyego,
Imagina, disponha.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]